2014-01-18 38 views
0

我尝试获取由我的应用程序启动的进程的PID。获取启动进程的PID C++

DWORD dwPid = GetProcessId(pi.hProcess); 

某处在这个论坛是这样的解决方案,但我没有FUNC“GetProcessId”

要启动过程中,我正在使用:

BOOL bSuccess = FALSE; 
LPTSTR pszCmd = NULL; 
PROCESS_INFORMATION pi;// = {0}; 
STARTUPINFO si = {0}; 
si.cb = sizeof(si); 

pszCmd = ""; /* assign something useful */ 
bSuccess = CreateProcess("D:\\program\\program.exe",NULL, NULL, NULL, TRUE, 0, NULL, "D:\\program", &si, &pi); 
if (bSuccess) 
{ 

} 
  1. 它可以运行我的代码在这个启动程序没有DLL?

回答

1

the documentation on PROCESS_INFORMATION,您可以直接从PROCESS_INFORMATION结构通过访问dwProcessId成员访问的进程ID:

DWORD dwPid = pi.dwProcessId; 
+0

喔感谢,P 你能告诉我什么叫做把所有的方式其他程序中的arg函数? 同样在ollydbg中,我让断点获取函数arg – user2652995

+0

我不知道这些附加问题的答案 - 为什么不把它们作为单独的问题提交给StackOverflow?此外,如果此问题得到解决,请确保[接受答案](http://meta.stackexchange.com/a/5235)。 – user4815162342