阅读:2276回复:5
驱动或者应用程序中,知道一个进程ID,怎么样得到该进程的程序绝对路径?
驱动或者应用程序中,知道一个进程ID,怎么样得到该进程的程序绝对路径?
|
|
最新喜欢:hongsi...
|
沙发#
发布于:2002-11-19 16:17
进程的句柄和ID可以用PsGetCurrentProcess和PsGetCurrentProcessId获得。
2000下进程完整路径可以用以下函数获得: PCWSTR GetCurrentProcessPathName() { DWORD dwAddress = (DWORD)PsGetCurrentProcess(); if(dwAddress == 0 || dwAddress == 0xFFFFFFFF) return NULL; dwAddress += 0x1B0; if((dwAddress = *(DWORD*)dwAddress) == 0) return NULL; dwAddress += 0x10; if((dwAddress = *(DWORD*)dwAddress) == 0) return NULL; dwAddress += 0x3C; if((dwAddress = *(DWORD*)dwAddress) == 0) return NULL; return (PCWSTR)dwAddress; } |
|
板凳#
发布于:2002-11-20 16:19
GOOD!
|
|
|
地板#
发布于:2002-11-25 12:49
谢谢,我想让它显示出来应该怎么做?
我用dbgprint(\"%s\",GetCurrentProcessPathName()); 会蓝屏,用 dbgprint(\"%c\",GetCurrentProcessPathName()); 只能显示一个字符。 |
|
|
地下室#
发布于:2002-11-25 13:46
用RtlUnicodeStringToAnsiString什么的转换一下啊!
|
|
5楼#
发布于:2002-12-09 18:08
谢谢,我想让它显示出来应该怎么做?dbgprint(\"%ws\",GetCurrentProcessPathName()); 可以么? |
|
|