能力值:
( LV2,RANK:10 )
|
-
-
2 楼
QueryDosDevice
|
能力值:
( LV7,RANK:100 )
|
-
-
3 楼
DWORD WINAPI QueryDosDevice(
__in LPCTSTR lpDeviceName,
__out LPTSTR lpTargetPath,
__in DWORD ucchMax
);
这个是W版的声明,支持UNICODE,ANSI的话工程设置里选,对应的TSTR改成STR
这样调用:
TCHAR tcNtName[MAX_PATH];
memset((PVOID)tcNtName, 0, MAX_PATH * sizeof(TCHAR));
wcscpy(tcNtName, "C:\\windows\\system32\\taskmgr.exe"); //初始化Nt名
TCHAR tcDosName[MAX_PATH];
memset((PVOID)tcDosName, 0, MAX_PATH * sizeof(TCHAR));
QueryDosDevice(tcDosName, tcNtName, MAX_PATH); //由Nt名得到Dos名
\\??\\C:\\windows\\system32\\taskmgr.exe这个就是Nt名,\?\代表本机
|
能力值:
( LV15,RANK:670 )
|
-
-
4 楼
要第一次初始化数组的话,不用调用 memset 。直接这样就可以
TCHAR tcDosName[MAX_PATH] = {0};
即使用 memset ,也不用这样写:
memset((PVOID)tcNtName, 0, MAX_PATH * sizeof(TCHAR));
这样写更直观:
memset(tcNtName, 0, sizeof(tcNtName));
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
那DOSDEVICE\\C:\\windows\\system32\\taskmgr.exe 是不是NT NAME?
|
能力值:
( LV15,RANK:670 )
|
-
-
6 楼
没有见过这个路径。。从哪得到的?
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
忘了。。。我只是记录过。。,算了,也不常用
|
|
|