Articles of 进程

监视Windows中进程完成的某些系统调用

我希望能够监视某个进程所做的某些系统调用,主要是文件I / O调用。 在Linux上,我可能会用适当的参数使用strace,但是我怎么能在Windows上做到这一点? 我主要感兴趣的是运行一个进程,并找出它已经读取和写入的文件。 编辑:我想从另一个进程编程。 我知道ProcessMonitor,但我想以一种可导入另一个程序的forms接收数据以供进一步分析。 编辑:如果我进一步缩小我的要求,它可能足以能够监视CreateFile()的调用。 我真的只关心打开哪些文件,如果打开它们来读/写或者只读。 另一个我没有真正说明的要求是速度是相当重要的, 我打算做这样的事情,如编译一个C ++文件,并拉起一个完整的graphics用户界面,生成一个20MB的日志文件将有非常高的开销。 编辑:这也不错,如果它不需要pipe理权限。

对于Windows 7上的64位安装,Python PIP有MS Visual Studio 2010 Express的path问题

我正在创build一个干净安装的Python 3.3,64位版本的virtualenv。 (注:我在我的电脑上安装了几个包括WinPython的python安装程序,但是想要为我正在处理的几个项目设置干净和小的virtualenvs。WinPython版本工作得很好。)当我使用pip尝试安装软件包时,我收到了一个错误信息(如果需要,可以包含pip日志)。 最终,错误信息的最后一行是: File "c:\python33-b\Lib\distutils\msvc9compiler.py", line 287, in query_vcvarsall raise ValueError(str(list(result.keys()))) ValueError: ['path'] 我调查了msvc9compiler.py中函数query_vcvarsall的结果。 我发现这个函数在我的电脑上查找MS Visual Studio 10 Express的vcvarsallpath。 它正在寻找4个组件:INCLUDE =,PATH =,LIB =和LIBPATH =。 这些是特定于MS VS 2010.我的安装发送了一个“amd64”参数到这个函数。 它找不到PATH =语句,但find了vcvarsall.bat文件。 当我欺骗这个函数来使用“x86”参数时,它发现了所有这4个语句,看起来好像运行的很好。 我花了一些时间在网上研究这个。 我发现MS VS Express 2010默认安装为32位。 一个必须设置它运行为64位(这意味着它将设置上面所需的语句。)显然有一个错误,并没有安装这个版本的64位工具。 所以我安装了MS SDK以安装64位工具。 然后我发现有一个修复,并安装(在下面列出的链接)。 有几种方法可以为64位VS创buildpath。 一个是在MS VS的命令行上运行vcvarsall amd64 。 这导致了一个消息说工具没有安装在我的电脑上。 这些工具位于C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64目录中。 它显然正在寻找的文件是vcvars64.bat(或类似的东西)。 我有目录但不是batch file。 […]

找不到w3wp进程

我使用Visual Studio 2010在本地机器上debugging一个asp.net MVC项目。 步骤是: 单击debugging,并尝试执行“w3wp.exe”进程。 但是它不在列表中。 我确定点击“在所有会话中显示进程”。

如何杀死Windows CE中的进程?

我怎样才能杀死从我的terminal(Windows CE 5.0)使用C#代码进程Windows \ MyProcc.exe?

从32位应用程序访问64位registry

我需要在c ++中打开一个registry项"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{26A24AE4-039D-4CA4-87B4-2F86416024FF}" 。 它包含Java 64位应用程序。 该registry项的完整path是"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F86416024FF}" 。 我们可以通过registry来查看这个path。 我用 returnStatus = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\{26A24AE4-039D-4CA4-87B4-2F86416024FF}"), 0, KEY_ALL_ACCESS, &hKey) 用于打开registry; 但它返回错误值(2)。 returnStatus = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall")… 返回成功结果。 我能做什么?

检测外部进程是否交互式,并有任何可见的用户界面

我似乎无法find一种方法来确定一个Process是否有一个用户界面,例如一个窗口,这是用户可见的? Environment.UserInteractive对外部进程没有用处 process.MainWindowHandle != IntPtr.Zero似乎总是在我的testing中返回false? 我想区分说Notepad和conhost

64位应用程序和内联汇编

我正在使用Visual C ++ 2010开发32位Windows应用程序。 有一些我真的想要使用内联汇编。 但是我刚刚意识到Visual C ++不支持64位应用程序中的内联汇编。 因此将来移植到64位是一个大问题。 我不知道64位应用程序如何与32位应用程序不同。 将来有没有机会将32位应用程序全部升级到64位? 我听说64位的CPU有更多的寄存器。 由于性能不是我的应用程序的关注,使用这些额外的寄存器不是我所关心的。 还有什么其他的原因,32位应用程序需要升级到64位? 除了64位应用程序可能使用64位CPU专有的寄存器或指令之外,64位应用程序与32位应用程序相比处理事情是否有所不同? 我的应用程序需要与其他操作系统组件进行交互,例如驱动程序,我知道它必须是64位窗口中的64位。 我的32位应用程序是否兼容?

CreateProcess在Windows 7下失败

我试图在Windows 7的新环境下编译Windows XP中的遗留代码。它编译但是在运行时失败。 CreateProcess()返回0,GetLastError()返回2,代表ERROR_FILE_NOT_FOUND 这是我对CreateProcess的调用 STARTUPINFO StartInfo; memset(&StartInfo, 0, sizeof(StartInfo)); wcsncpy(astrCommandLine, L"TFTP", MAX_OSCOMMANDLINE_SZ-1); BOOL bFuncRetn = CreateProcess(NULL, astrCommandLine, // command line NULL, // process security attributes NULL, // primary thread security attributes NULL, // handles are inherited 0, // creation flags NULL, // use parent's environment NULL, // use parent's current directory &StartInfo, // STARTUPINFO […]

MSI安装程序,64位操作系统,写入\ windows \ system32 \ inetsrv文件夹

在Windows Server 2008 64位上,我需要一个.msi安装程序文件将一些文件写入\ windows \ system32 \ inetsrv文件夹。 (这些文件是一些XML Schemavalidation文件,C#XmlReaderSettings.Schema.Add()希望在该文件夹中)。 安装程序运行时,文件最终在\ windows \ SysWOW64 \ inetsrv文件夹中,而不是它们需要的位置。 我试图让安装程序写入\ windows \ Sysnative文件夹,然后安装程序创build了一个具有确切名称的文件夹,我没想到这是可能的。 看到这个页面有关抑制SysWOW64redirect的一个很好的讨论。 我应该如何让.msi将我的文件写入Windows 2008 64位的\ windows \ system32 \ inetsrv文件夹中?

PyInstaller将不会安装Python 3.6.0a4和x64 Windows

我曾经说过Python版本(来自https://www.python.org/downloads/windows/ )和x64 Windows 10.每当我尝试执行“pip install pyinstaller”时,它都会崩溃,并显示一个错误消息: C:\WINDOWS\system32>pip install pyinstaller Collecting pyinstaller Using cached PyInstaller-3.2.tar.gz Requirement already satisfied (use –upgrade to upgrade): setuptools in c:\users\jskurski\appdata\local\programs\python\python36\lib\site-packages (from pyinstaller) Collecting pefile (from pyinstaller) Using cached pefile-2016.3.28.tar.gz Collecting pypiwin32 (from pyinstaller) Using cached pypiwin32-219.zip Complete output from command python setup.py egg_info: Traceback (most recent call last): File "<string>", line […]