阅读:1557回复:5
如何获得文件的handle?
在文件驱动驱动中如何根据文件的object获得文件的handle呀?
|
|
|
沙发#
发布于:2005-04-01 09:44
老大,帮你顶一下。
btw,object和handle有什么区别?不要骂我菜 :) |
|
|
板凳#
发布于:2005-04-01 09:54
在kernel,handle是一个32位无符号数.
object 是一个结构,包括各种信息。 windows内部的所谓对象大部分是一个数据结构,并不是一个真正的对象。 |
|
|
地板#
发布于:2005-04-01 12:27
明白了。 :)
|
|
|
地下室#
发布于:2005-04-01 15:24
A CCB is simply a handle or context created and maintained
by the fsd to represent an open instance of an on-disk object. for example: when a user application performs an open operation on a file , It receives a handle from the operation system if the open request was successful. corresponding to this handle ,a windows FSD creates a CCB structure which is simply the kernel equivalent of the user handle. 这一段是<<windows nt file system internals>>第九章的一段话,不知道你所说的handle与这里描述的handle是否是同一个东西.我也是做fsd,我并没有遇到在fsd中寻找handle的,而且象ms ddk提供的cdfs,fastfat等source code中也没见有handle这个东西,handle本身应该只出现在user mode才对. ------------------------------------- harmony soul! ------------------------------------- |
|
5楼#
发布于:2005-04-01 21:58
NTSTATUS
ObOpenObjectByPointer ( IN PVOID Object, IN ULONG HandleAttributes, IN PACCESS_STATE PassedAccessState OPTIONAL, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, OUT PHANDLE Handle ) |
|