2011-03-31 61 views
0

我创建了一个应用程序来观看我的其他应用程序,它在我调试控制台或vcl应用程序时运行良好。OpenProcess的问题,而不是在IDE

当我尝试观看服务应用程序时,它给了我一些问题,我注意到当我尝试“OpenProcess(PROCESS_QUERY_INFORMATION,False,PID)”时,我得到了“访问被拒绝”。 但是,如果通过Delphi IDE打开我的监视器,我没有这个问题。

有人知道它是什么?

我的意图是打开进程来获取它的GetProcessTimes,以检查它消耗了多少内存。 我知道从SysInternal的procexp.exe可以做到这一点没有问题,有人知道他们是如何做到这一点?

Tks in advice。

Obs:在我的机器中,我禁用了UAC,并以管理员身份执行了监视器。


新的信息:

我发现访问服务,因为要我做其他类型的应用程序,我必须使用OpenService的。现在我可以毫无问题地访问它,现在我将搜索类似的GetProcessTimes命令。

+0

上次我看着SysInternal做的事情没有出现问题,结果变得非常复杂 – 2011-03-31 13:45:22

+0

OpenService不会帮助你。你需要OpenProcess。 – 2011-03-31 15:34:19

回答

0

解决,我继续使用OpenProcess,但我用PROCESS_QUERY_LIMITED_INFORMATION(0x1000)来访问它。问题只是权限,使用这个我可以访问该进程并使用GetProcessTimes来获得我需要的。

Tks all。