20楼#
发布于:2005-06-28 10:49
就是IRP_MJ_CREATE的处理例程
|
|
21楼#
发布于:2005-06-29 09:15
NTSTATUS DispatchCreate(PDEVICE_OBJECT fdo, PIRP Irp)
{ //NTSTATUS status; //DbgPrint( "TWDM: IRP_MJ_CREATE for Twdm.sys ...... " ); //status = STATUS_SUCCESS; // return status; HANDLE TokenHandle = NULL; NTSTATUS Status = ZwOpenThreadToken((HANDLE)-2, STANDARD_RIGHTS_READ, FALSE, &TokenHandle); if (NT_SUCCESS(Status)) { ULONG ResultLength; TOKEN_TYPE TType; Status = ZwQueryInformationToken(TokenHandle, TokenType, &TType, sizeof(TOKEN_TYPE), &ResultLength); if (NT_SUCCESS(Status)) { if (TType == TokenImpersonation) { bServerCall = TRUE; } } ZwClose(TokenHandle); } } 按照楼上说的 修改了例程,但是在2000Server下用DDK编译有错误,ZwOpenThreadToken()未定义,网上说缺少什么库 ,但是按帖子上的方法修改source文件 把lib引入 还是不行 问一下杂恩么办? |
|
22楼#
发布于:2005-06-29 09:30
那就自己定义ZwOpenThreadToken:
ZwOpenThreadToken( IN HANDLE ThreadHandle, IN ACCESS_MASK DesiredAccess, IN BOOLEAN OpenAsSelf, OUT PHANDLE TokenHandle ); |
|
23楼#
发布于:2005-06-29 09:36
恩 后来 我自己定义了ZwOpenThreadToken,ZwQueryInformationToken,但是还说TOKEN_TYPE 未定义 亚 ?
|
|
24楼#
发布于:2005-06-29 10:05
ZwQueryInformationToken()的声明有吗?谢谢 编译 错 声明不对~
|
|
25楼#
发布于:2005-06-29 10:15
网上下的filemon的代码 不修改直接编译的 就出现
wintypes.h(24) : error C2220: warning treated as error - no object file generate d wintypes.h(24) : error C4005: 'FILE_SPECIAL_ACCESS' : macro redefinition wintypes.h(33) : error C4273: 'ProbeForWrite' : inconsistent dll linkage wintypes.h(299) : error C2011: '_FILE_NAME_INFORMATION' : 'struct' type redefini tion 以上的错误,现在我修改后 也剩这4个错误了 什么原因? |
|
26楼#
发布于:2005-06-29 10:15
NTSTATUS
ZwQueryInformationToken( IN HANDLE TokenHandle, IN TOKEN_INFORMATION_CLASS TokenInformationClass, OUT PVOID TokenInformation, IN ULONG TokenInformationLength, OUT PULONG ReturnLength ); |
|
27楼#
发布于:2005-06-29 10:16
网上下的filemon的代码 不修改直接编译的 就出现
wintypes.h(24) : error C2220: warning treated as error - no object file generate d wintypes.h(24) : error C4005: 'FILE_SPECIAL_ACCESS' : macro redefinition wintypes.h(33) : error C4273: 'ProbeForWrite' : inconsistent dll linkage wintypes.h(299) : error C2011: '_FILE_NAME_INFORMATION' : 'struct' type redefini tion 以上的错误,现在我修改后 也剩这4个错误了 什么原因? |
|
28楼#
发布于:2005-06-29 11:00
呵呵 谢谢斑斑 编译过去了,我想得到bServerCall 的值 应该怎么调用?
|
|
上一页
下一页