Articles of 进程

使用Python进行Windows进程pipe理

我需要一个脚本来检查一个特定的进程是否正在运行,如果找不到,就返回一些东西。 我知道这可以使用subprocess完成,但有一个更简单的方法来做到这一点?

Anaconda Python 32位正试图加载Anaconda 64位库

我在Windows 7 64位,并试图在同一个系统上使用pythonPython 64位和32位分布。 我希望能够构buildWindows 32位可执行文件以进行分发(使用py2exe),这需要使用32位Python解释器。 我以前已经安装了Anaconda Python 64位到C:\ Anaconda。 我现在已经安装了32位的Anaconda Python发行版到C:\ Anaconda32。 但是,当我尝试从C:\ Anaconda32 \ python.exe运行python解释器时,它正在将64位环境加载到我的sys.path中。 结果是很多库调用失败,由于32位进程试图执行64位库(我认为)。 我也尝试编辑cmd.exe会话中的path,只包含C:\ Anaconda32和C:\ Anaconda32 \ Scripts。 结果如下: C:\Anaconda32>echo %path% C:\Anaconda32;C:\Anaconda32\Scripts C:\Anaconda32>python.exe Python 2.7.7 |Anaconda 2.0.1 (64-bit)| (default, Jun 11 2014, 10:41:43) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. Anaconda […]

如何在VB6中执行进一步的代码之前等待shell进程完成

我有一个小型的VB6应用程序,我使用Shell命令来执行程序。 我将程序的输出存储在一个文件中。 然后我读取这个文件,并使用VB6中的msgbox将输出放在屏幕上。 这是我的代码现在看起来像: sCommand = "\evaluate.exe<test.txt " Shell ("cmd.exe /c" & App.Path & sCommand) MsgBox Text2String(App.Path & "\experiments\" & genname & "\freq") 问题是VB程序使用msgbox打印的输出是文件的旧状态。 是否有一些方法来执行VB代码,直到我的shell命令程序完成,以便我得到输出文件的正确状态,而不是以前的状态?

Win32:如何枚举subprocess?

在Win32下枚举当前正在运行的进程的subprocess的最好方法是什么? 我可以想到一些方法来做到这一点,但他们似乎过于复杂和缓慢。 以下是解决scheme的要求: 具体而言,我需要知道是否有任何当前正在运行的进程是由当前进程启动的。 将运行在WinXP上,不应该要求分发特殊的DLL。 不应该需要大量的CPU开销(它将在后台定期运行)。 我最终会用Delphi写这个,但是我可以从任何你有代码的语言中进行转换。大多数情况下,我正在寻找最有效的一组Win32 API来使用。 谢谢!

通过GCC的Win64的Python扩展

有没有人有使用mingw64编译Windows的64位Python扩展模块的运气? 我已经成功地为VS2008编译了这个平台的扩展。 我也用mingw32(用一个32位的python)编译它。 我宁愿两个版本都使用GCC。 我已经使用Cygwin安装了mingw64-x86_64-w64 GCC 4.5.1工具集,并说服Python使用它们。 但是,链接到python本身失败。 所以我拿起pexports 0.44,用它来转储一个python26.def文件,并创buildlibpython26.a 。 现在,正如在这个问题中 ,我从Python获得的唯一链接错误是关于__imp_py_InitModule4 。 浏览def文件,我看到一个Py_InitModule4_64符号。 有任何想法吗?

Windows SDK – C# – debugging进程退出,错误代码为-1073741502

简洁版本 你怎么知道当一个进程退出,错误代码为-1073741502哪个DLL无法加载(可能是为什么)? 长版 我正在尝试为Mercurial编写一个pretxnchangegroup钩子,作为该钩子的一部分,我需要获得运行该命令的输出: hg log 我用来启动和运行hg.exe进程的代码如下所示: string Command = "log"; Process p = new Process(); ProcessStartInfo psi = p.StartInfo; p.StartInfo.FileName = @"C:\Program Files (x86)\Mercurial\hg.exe"; psi.CreateNoWindow = true; psi.LoadUserProfile = true; psi.RedirectStandardError = true; psi.RedirectStandardOutput = true; psi.UseShellExecute = false; psi.WorkingDirectory = Environment.CurrentDirectory; p.StartInfo.Arguments = Command; // Pass-through environment variables psi.UserName = Properties.Settings.Default.HG_User; psi.Domain = […]

一个x86 excutable可以在64位操作系统上使用多less内存?

我认为这个问题听起来很清楚,但要进一步解释: 假设我们有装有8GB内存的Windows 7 x64个人电脑, ( 64位操作系统与32位进程是我的意图 ) 问题1:一个64位进程在这个环境中可以使用多less内存? 问题2:在这种环境下, 32位进程可以使用多less内存? 问题3:如果一个32位的进程在这个环境下只能使用2GB的内存(即使是大地址空间大小:3GB),但大多数游戏都是32位的,所以这意味着:虽然我们安装了8GB内存,例如一个游戏在任何时候只能使用2-3GB的RAM?

我如何启动资源pipe理器使用c#中的进程类

我已经用我的应用程序取代了Windowsshell,它完美的工作,closures我的应用程序后,我必须启动Windows资源pipe理器与下面的一段代码 代码启动资源pipe理器 Process.Start(@"c:\windows\explorer.exe"); 我用来replaceshell的registry项 HKEY_Local_Machine\Software\Microsoft\WindowsNT\CurrentVersion\WinLogon\Shell 它不显示任务栏和开始菜单,它只显示mydocuments文件夹。 在资源pipe理器启动后,我需要启动菜单和任务栏

如何从32位WOW进程中枚举64位进程中的模块

我有一个要求在Windows 32位WOW进程中检索一个64位进程的所有模块, EnumProcessModules将失败,如下所述: 如果从在WOW64上运行的32位应用程序调用此函数,则只能枚举32位进程的模块。 如果进程是64位进程,则此函数失败,最后一个错误代码为ERROR_PARTIAL_COPY(299)。 至于EnumProcessModulesEx和CreateToolhelp32Snapshot。 你有什么想法如何实现它? 谢谢。

Delphi 7的forms,主持人不在Vista中工作

该软件build立在Delphi 7上。 在我的XP机器上,窗体的大小如我所料。 但是,在两台Vista机器上,我有一些组件,其锚点设置为[akLeft,akTop,akRight,akBottom],但是当调整表单的大小时,组件不会随着表单拉伸,在右侧和底部边缘留下空白。 在XP机器上,组件正确地拉伸forms。 所以,Vista机器似乎忽略了锚定属性。 任何想法是什么造成这一点,以及如何解决它? 重要更新(弗朗索瓦): 我们在D2007应用程序和所有x64窗口上遇到了同样的问题。 安德烈亚斯的答案确实是解决的办法。 所以这不是D7也不是Vista相关的。