首页
社区
课程
招聘
[求助]弱问,如何让EXE导出函数
发表于: 2007-12-17 23:25 9605

[求助]弱问,如何让EXE导出函数

2007-12-17 23:25
9605
弱问,如何让EXE导出函数供其他的应用程序调用?

就像OllyDBG.exe那样!

谁知道?
能够给个例子最好了,谢谢!

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

收藏
免费
支持
分享
最新回复 (6)
雪    币: 7327
活跃值: (3813)
能力值: (RANK:1130 )
在线值:
发帖
回帖
粉丝
2
我前一段时间写的忽悠.exe里面的一小段代码,方法不是很好,不过我想不出好方法了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#pragma comment(linker, "/EXPORT:p1=_GetOpCodeSize,@1")
#pragma comment(linker, "/EXPORT:p2=_SetOnBefore,@2")
#pragma comment(linker, "/EXPORT:p3=_SetOnAfter,@3")
#pragma comment(linker, "/EXPORT:p4=_My_ReadProcessMemory,@4")
#pragma comment(linker, "/EXPORT:p5=_My_WriteProcessMemory,@5")
#pragma comment(linker, "/EXPORT:p6=_My_ZwSetContextThread,@6")
#pragma comment(linker, "/EXPORT:p7=_My_CreateProcessA,@7")
#pragma comment(linker, "/EXPORT:p8=_myStrCmp@8,@8,NONAME")
 
 
 
#ifdef __cplusplus
extern "C"
{
#endif
     
void My_ReadProcessMemory(DWORD RetAddr,HANDLE hProcess, LPVOID lpBaseAddress,LPVOID lpBuffer,DWORD nSize,LPDWORD lpNumberOfBytesWritten);
void My_ZwSetContextThread(DWORD RetAddr,HANDLE ThreadHandle,CONTEXT * pContext);
     
void My_WriteProcessMemory(DWORD RetAddr,HANDLE hProcess, LPVOID lpBaseAddress,LPVOID lpBuffer,DWORD nSize,LPDWORD lpNumberOfBytesWritten);
void My_CreateProcessA(DWORD RetAddr,
                       LPCSTR lpApplicationName,
                       LPSTR lpCommandLine,
                       LPSECURITY_ATTRIBUTES lpProcessAttributes,
                       LPSECURITY_ATTRIBUTES lpThreadAttributes,
                       BOOL bInheritHandles,
                       DWORD dwCreationFlags,
                       LPVOID lpEnvironment,
                       LPCSTR lpCurrentDirectory,
                       LPSTARTUPINFOA lpStartupInfo,
                       LPPROCESS_INFORMATION lpProcessInformation
    );
 
int __stdcall myStrCmp(const char* a,const char* b);
 
 
 
#ifdef __cplusplus
};
#endif
2007-12-18 00:27
0
雪    币: 1852
活跃值: (504)
能力值: (RANK:1010 )
在线值:
发帖
回帖
粉丝
3
加个DEF文件
2007-12-18 22:42
0
雪    币: 281
活跃值: (3290)
能力值: ( LV12,RANK:610 )
在线值:
发帖
回帖
粉丝
4
我试了,不行啊!
用IDA看不到要导出的函数。
而OllyDBG.exe用IDA可以看到一堆导出函数的。
2007-12-18 22:55
0
雪    币: 281
活跃值: (3290)
能力值: ( LV12,RANK:610 )
在线值:
发帖
回帖
粉丝
5
呵呵,谢谢,我来试试!
2007-12-18 23:04
0
雪    币: 7327
活跃值: (3813)
能力值: (RANK:1130 )
在线值:
发帖
回帖
粉丝
6
加DEF文件是可以的,但是编译完要把PE头里面dll的标志去掉才能运行,很不方便,也许是VC链接器的原因吧
2007-12-19 09:00
0
雪    币: 297
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
7
__declspec(dllexport) fundef
可以看到导出的函数.
但是,能不能使用是另外一回事.
2007-12-19 11:53
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册