草庐IT

ssh-programming-with-paramiko-com

全部标签

c++ - 用于类似资源管理器的系统 View 的 COM 库

为了提供类似WindowsExplorer的用户系统View,我们一直在使用LogicNP(以前称为SkySoftware)的shell控件,但这些控件存在缺陷,例如,不支持Win7库。供应商没有回复我们关于更新的询问,因此我们正在寻求更换包。要求:ActiveX(无托管代码或MFC)系统的TreeView和ListView每项复选框32位和64位版本对替代产品有什么建议吗?TIA。 最佳答案 基于您所说的需要支持WindowsXP这一事实:我通过使用ShellAPI枚举文件和文件夹来完成此操作,然后使用自定义绘图为标准ListVi

windows - 调用已释放的 COM 对象

我创建了一个COM对象,用于某些应用程序的自动化任务。发生这种情况时,应用程序将启动并显示其主窗口。问题发生在用户关闭主应用程序窗口时。NextInvoke对COM对象的调用不起作用。问题是它不会失败,也不会报告错误。如果我在下一行代码中放置一个调试器断点,它永远不会到达。如果我用try/catch包围Invoke调用,则不会捕获异常。在发布版本中它只是崩溃。这应该如何运作?因为我使用CComDispatchDriver作为IDispatch*的包装器,所以我希望即使用户关闭了应用程序,我的AddRef也会使COM对象保持事件状态。我希望至少得到一些HRESULT作为错误。

windows - git,Windows 上的 SSH_ASKPASS

我正在为Linux和Windows编写一个图形化的git前端(MSEgit)基于MSEide+MSEgui.MSEgit有一个内部控制台窗口,它通过管道与git通信。在Linux上,它使用PTY,因此SSH要求提供PTY上的key解锁密码。在Windows上,我编写了一个小型密码输入应用程序,并相应地设置了SSH_ASKPASS环境变量。如果git启动时设置了CreateProcess()dwCreationFlagsDETACHED_PROCESS,SSH将调用密码应用程序,但密码输入窗口不会聚焦,它的任务栏图标会闪烁。如果调用FreeConsole()以确保没有连接到MSEgit的

php - 让 PHP 在 64 位操作系统中访问 32 位 COM 对象

我最近将我的旧家庭服务器系统升级到64位系统(Win7),但在访问PHP中的32位家庭自动化DCOM对象时遇到问题。我正在运行32位Apache,据我所知,32位PHP(我认为没有可用的64位版本)。此设置与我的旧(但有效)设置之间的唯一区别是我运行的是64位Windows7而不是32位。当我重新安装所有内容时,我最初感到困惑的是我无法配置对DCOM对象的访问,因为dcomcnfg.exe没有显示它。过了一会儿我才意识到我必须启动32位版本的dcomcnfg.exe才能看到DCOM对象(mmccomexp.msc/32)。我现在正尝试在PHP中访问这个32位DCOM对象,但它不起作用。

windows - 调用 ssh2 命令的 Perl 脚本无法在 Windows 任务计划程序中取回输出

我可以毫无问题地从命令行运行Perl脚本,但是当我尝试使用Windows任务管理器(64位Windows2008Server)自动执行此任务时,SSH/SSH2的输出无法写入输出文件。它是一个perl脚本,它执行如下操作:my$DB_FILE1=$PATH."\\FSBusinessUtil_".$hostfqdn.$DATE;open(OUTFILE,">$DB_FILE1")ordie"Couldnotopendatafile";printOUTFILE"FilesystemInfo\n";my$output1=`$SSH_PATH\\ssh$user\@$hostnameNAS_

c++ - 跨进程 COM 编码(marshal)拆收器 : reduce number of copies for large arrays

作为简化的案例:我需要通过现有的COM接口(interface)将VARIANT传输到另一个进程。我目前使用MIDL生成的编码器。实际传输是针对许多值的,是时间关键过程的一部分,并且可能涉及大字符串或safearray(几MB),因此复制的数量似乎是相关的。由于接收方需要“保留”函数调用之外的数据,因此编码(marshal)拆收器至少需要制作一份拷贝。然而,我能想到的所有签名都包括两份:SetValue([in]VARIANT)GetValue([out]VARIANT*)//calledbyreceiver在这两种情况下,根据我的理解,编码器制作了一个跨进程拷贝,但确实被编码器销毁了

Windows 任务计划程序 : how trigger task then program has closed?

我正在构建一个特定的任务。我需要跟踪程序何时结束,生成报告并进行分析。所以,我想为它制定一个时间表。例如,我有一个名为testing.exe的进程,我想在它完成作业后检查它的日志。我有analyze.bat文件。我只需要一些东西来运行它,就在testing.exe完成它的工作并关闭之后。我无法更改程序代码中的任何内容,所以我相信任务调度程序是唯一的方法。请帮帮我 最佳答案 为此甚至不需要TaskScheduler!只需批量即可完成!@echooffsetbatdir=____________:begintasklist/FI"IMA

python - pyinstaller 不读取我的 Hook 文件并且不适用于 win32com.shell

根据pyinstaller的文档,如果您将文件命名为hook-fully.qualified.import.name.py,每当您导入匹配的时,它都会读取该文件。py文件。但是,我的脚本是这样的:importpythoncomfromwin32com.shellimportshellfromwin32comimportstoragecon...并且pyinstaller拒绝识别win32com.shell并出现以下错误:ImportError:Nomodulenamed'win32com.shell'。因此,我使用以下代码创建了hook-win32com.shell.py:hidden

java - 在 "VM options"和 "Program arguments"中使用环境变量

在我的IDEA项目配置中,我有以下文本字段:我想定义一些环境变量,并在字段"VMoptions"和"Programarguments"中引用它们。我尝试使用以下环境变量定义:MY_FOLDER=/some/random/pathMY_ARGUMENT=2然后在“VMoptions”中输入:-Dfoo=$MY_FOLDER在我输入的程序参数中$MY_ARGUMENTfoobar但是,在调用我的类之前,环境变量似乎没有被解析,即如果我在Java中检查args[0],它包含字符串值$MY_ARGUMENT,不是2。为什么?我该如何解决这个问题? 最佳答案

Windows 命令行 : open file with active process?

我希望能够理想地告诉事件进程使用Windows命令行打开文件——但任何使用内置Windows(7+)功能(例如powershell或vbscript)的解决方案也可以。例如,如果我打开了一个记事本实例并且知道它的processid是1234,那么能够执行如下操作会很棒:notepad.exe"myfile.txt"/pid=1234并让记事本尝试在现有进程的窗口中打开文件。这可能吗? 最佳答案 你应该为此使用Autohotkey。虽然这也可以在powershell中完成,但它比在专用工具中复杂得多。在AHK中,您将模拟打开文件(通常