首页
社区
课程
招聘
[求助]PsGetProcessImageFileName 在哪个lib里如何定义?
发表于: 2012-3-27 05:56 20849

[求助]PsGetProcessImageFileName 在哪个lib里如何定义?

2012-3-27 05:56
20849
请教: PsGetProcessImageFileName 在哪个lib里  如何定义?

郁闷死了, 网上都是直接用他的源码 , 连定义在哪都不说.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 388
活跃值: (147)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
UCHAR *PsGetProcessImageFileName(PEPROCESS EProcess);
2012-3-27 07:06
0
雪    币: 388
活跃值: (147)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
不用lib,直接声明一下就可以了
2012-3-27 07:07
0
雪    币: 244
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
该 API 在内核中是导出了的,你只需要声明一下就可以直接调用,在 WRK 中,该 API 的声明位于 ps.h 中,
而该 API 的实现在 pshelper.c 中,你要在内核程序中使用此 API ,你只需要做如下声明即可:
NTKERNELAPI
UCHAR *
PsGetProcessImageFileName(
    __in PEPROCESS Process
    );
2012-3-27 09:13
0
雪    币: 350
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
PsGetProcessImageFileName传入一个进程eprocess结构它得到的进程名最多为(15+'\0')个字符,即不完整的! 跟硬编码从此结构中读取的结果一样。。
2013-3-15 03:09
0
雪    币: 9
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
大神我照你的方法定义,但是还是出错,请问为什么啊。
NTKERNELAPI UCHAR * PsGetProcessImageFileName(__in PEPROCESS Process);
下面是错误提示:
1>1>hook.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) unsigned char * __stdcall PsGetProcessImageFileName(struct _EPROCESS *)" (__imp_?PsGetProcessImageFileName@@YGPAEPAU_EPROCESS@@@Z) referenced in function "long __stdcall FuckSecurityProcedure(void *,enum _SECURITY_OPERATION_CODE,unsigned long *,void *,unsigned long *,void * *,enum _POOL_TYPE,struct _GENERIC_MAPPING *,unsigned long)" (?FuckSecurityProcedure@@YGJPAXW4_SECURITY_OPERATION_CODE@@PAK02PAPAXW4_POOL_TYPE@@PAU_GENERIC_MAPPING@@K@Z)
1>1>c:\ddkfile\hook\hook\hook.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) unsigned char * __stdcall PsGetProcessImageFileName(struct _EPROCESS *)" (__imp_?PsGetProcessImageFileName@@YGPAEPAU_EPROCESS@@@Z) referenced in function "long __stdcall FuckSecurityProcedure(void *,enum _SECURITY_OPERATION_CODE,unsigned long *,void *,unsigned long *,void * *,enum _POOL_TYPE,struct _GENERIC_MAPPING *,unsigned long)" (?FuckSecurityProcedure@@YGJPAXW4_SECURITY_OPERATION_CODE@@PAK02PAPAXW4_POOL_TYPE@@PAU_GENERIC_MAPPING@@K@Z)
1>1>c:\ddkfile\hook\hook\objchk_wxp_x86\i386\Hook.sys : fatal error LNK1120: 1 unresolved externals
1>1>c:\ddkfile\hook\hook\objchk_wxp_x86\i386\hook.sys : error LNK1120: 1 unresolved externals
2013-8-10 23:14
0
雪    币: 167
活跃值: (190)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
extern "C"
{
这里填导出函数声明
}
2013-8-10 23:22
0
雪    币: 24
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
有很多出错,就是因为忘了这个
2013-8-11 13:33
0
雪    币: 220
活跃值: (117)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
C语言无压力。。
2013-9-20 10:23
1
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
UCHAR *PsGetProcessImageFileName(__in PEPROCESS eprocess);
   PsGetProcessImageFileName(Eprocess);
2014-7-12 00:04
0
雪    币: 135
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
这个在NT内核模块里,是输出表里的函数,你直接声明下原型,就可以直接调用了!!
2014-7-12 00:30
0
游客
登录 | 注册 方可回帖
返回
//