能力值:
( LV2,RANK:10 )
|
-
-
2 楼
如用ZwQueryInformationProcess 获取进程路径后,如下:
\Device\HarddiskVolume2\Program Files\EditPlus\EDITPLUS.EXE
怎样得到"\Device\HarddiskVolume2"对于的符号链接名(比如:"D:\")
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
在R3下, 可以直接使用
DWORD WINAPI QueryDosDevice(
__in LPCTSTR lpDeviceName,
__out LPTSTR lpTargetPath,
__in DWORD ucchMax
);
但想只在R0下用,这个是用不上了
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
还是这个ZwQueryInformationProcess来解决问题,通过
typedef struct _PROCESS_BASIC_INFORMATION {
PVOID Reserved1;
PPEB PebBaseAddress;
PVOID Reserved2[2];
ULONG_PTR UniqueProcessId;
PVOID Reserved3;
} PROCESS_BASIC_INFORMATION;
得到PEB,再得到ProcessParameters就可以了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
不知道lz有没有注意到:PEB失效的话 ……Parameter也就不行了? ……
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
使用中的确碰到过, 也没有其他的好方法,目前只好MmIsAddressValid过滤一下了,凑合着用吧
|
能力值:
( LV9,RANK:290 )
|
-
-
7 楼
不是有一个RtlVolumeDeviceToDosName的函数吗?
NTSTATUS
RtlVolumeDeviceToDosName(
IN PVOID VolumeDeviceObject,
OUT PUNICODE_STRING DosName
);
RtlVolumeDeviceToDosName returns the MS-DOS® path for a specified device object that represents a file system volume.
|
能力值:
( LV9,RANK:420 )
|
-
-
8 楼
膜拜楼上的大牛
|
|
|