首页
社区
课程
招聘
[求助][求助]怎么判断一个文件被哪个进程占用呢?
发表于: 2011-12-30 16:19 9785

[求助][求助]怎么判断一个文件被哪个进程占用呢?

2011-12-30 16:19
9785
小弟是菜鸟,怎么判断一个文件被哪个进程占用呢?没有搞过。
最后是在Ring3下实现,不要驱动。希望能给出实现的代码。
C++ 或者 Delphi的都可以。
跪谢。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 636
活跃值: (174)
能力值: ( LV9,RANK:260 )
在线值:
发帖
回帖
粉丝
2
ZwQuerySystemInformation(SystemHandleInformation, ……)
2012-1-1 18:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
up....希望有人关注。
2012-1-9 13:39
0
雪    币: 121
活跃值: (121)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
2楼的朋友已经回答你了啊。就那个函数,返回的数据中,有ProcessId的
2012-1-9 18:10
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我没搞出来啊。希望能详细点。
2012-1-9 20:07
0
雪    币: 603
活跃值: (40)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
6
查看内核对象的引用
2012-1-12 23:43
0
雪    币: 121
活跃值: (121)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
函数:ZwQuerySystemInformation(SystemHandleInformation, ……)
而结构体_SYSTEM_HANDLE_INFORMATION在extypes.h头文件中有定义:
typedef struct _SYSTEM_HANDLE_INFORMATION
{   
        ULONG NumberOfHandles;
        SYSTEM_HANDLE_TABLE_ENTRY_INFO Handles[1];
}SYSTEM_HANDLE_INFORMATION, *PSYSTEM_HANDLE_INFORMATION;

typedef struct _SYSTEM_HANDLE_TABLE_ENTRY_INFO
{
    USHORT UniqueProcessId;
    USHORT CreatorBackTraceIndex;
    UCHAR ObjectTypeIndex;
    UCHAR HandleAttributes;
    USHORT HandleValue;
    PVOID Object;
    ULONG GrantedAccess;
} SYSTEM_HANDLE_TABLE_ENTRY_INFO, *PSYSTEM_HANDLE_TABLE_ENTRY_INFO;
2012-1-16 16:53
0
游客
登录 | 注册 方可回帖
返回
//