首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
软件逆向
发新帖
0
0
脱离c库后return无法退出
发表于: 2014-7-30 11:43
5149
脱离c库后return无法退出
miaoerst
2014-7-30 11:43
5149
我写了一个程序,由于体积太大, 就把c库脱掉了, 只用的ntdll里面的标准函数,手工指定的winmain入口点, 但是我改完之后其他一切正常, 在winmain函数中return 0后不会退出, 而是一直挂在了ntdll空间中的tppwaiterpthread这个线程里.
程序是一个网络程序, 调用了很多类似WSCInstallProvider的lsp操作的函数.
请问是什么原因导致的呢.
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
收藏
・
0
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
11
)
sidyhe
雪 币:
2161
活跃值:
(750)
能力值:
( LV7,RANK:100 )
在线值:
发帖
16
回帖
339
粉丝
9
关注
私信
sidyhe
1
2
楼
自己调用API退出
其实使用return返回后也是由框架负责退出的
上传的附件:
01.jpg
(42.97kb,1次下载)
2014-7-30 11:55
0
bxc
雪 币:
7048
活跃值:
(3527)
能力值:
( LV12,RANK:340 )
在线值:
发帖
245
回帖
1332
粉丝
26
关注
私信
bxc
6
3
楼
有没有指定入口点0.0
2014-7-30 12:03
0
miaoerst
雪 币:
12
活跃值:
(70)
能力值:
( LV2,RANK:10 )
在线值:
发帖
3
回帖
16
粉丝
0
关注
私信
miaoerst
4
楼
[QUOTE=sidyhe;1304755]自己调用API退出
其实使用return返回后也是由框架负责退出的
[/QUOTE]
请问具体应该调用哪个api呢, 是exit吗, 但是exit好像是C库里面的吧.
2014-7-30 12:15
0
miaoerst
雪 币:
12
活跃值:
(70)
能力值:
( LV2,RANK:10 )
在线值:
发帖
3
回帖
16
粉丝
0
关注
私信
miaoerst
5
楼
vs2008开发的, 在link的高级里指定了WinMain的入口点.
2014-7-30 12:16
0
信息组
雪 币:
200
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
0
回帖
5
粉丝
0
关注
私信
信息组
6
楼
自己定义的入口点,是需要进程所有线程都结束才真正的结束,C库的return之后还是会调用ExitProcess的,你可以自己调用ExitProcess来终止掉进程
2014-7-30 13:22
0
whnet
雪 币:
185
活跃值:
(25)
能力值:
( LV2,RANK:10 )
在线值:
发帖
22
回帖
1029
粉丝
0
关注
私信
whnet
7
楼
windows 里面的exit 是调用 了ExitProcess
This function is the preferred method of ending a process because it provides a clean process shutdown. This includes calling the entry-point function of all attached DLLs with a value indicating that the process is detaching from the DLL.
2014-7-30 13:23
0
鬼舞炼狱
雪 币:
29
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
18
回帖
99
粉丝
0
关注
私信
鬼舞炼狱
8
楼
return 以后还是需要调用C库的东西释放一些东西! 最后都是调用系统的ExitProcess~
所以 用ExitProcess 结束进程吧
2014-7-30 13:31
0
sidyhe
雪 币:
2161
活跃值:
(750)
能力值:
( LV7,RANK:100 )
在线值:
发帖
16
回帖
339
粉丝
9
关注
私信
sidyhe
1
9
楼
kernel32
ExitProcess or ExitThread
ntdll
ZwTerminateProcess or ZwTerminateThread
2014-7-30 13:49
0
bxc
雪 币:
7048
活跃值:
(3527)
能力值:
( LV12,RANK:340 )
在线值:
发帖
245
回帖
1332
粉丝
26
关注
私信
bxc
6
10
楼
按理说,你指定了入口点,并且没有使用库函数的话,是不会链接libcmt的。
你winmain直接return就行了。
2014-7-30 15:51
0
Rprop
雪 币:
878
活跃值:
(496)
能力值:
( LV3,RANK:20 )
在线值:
发帖
35
回帖
743
粉丝
12
关注
私信
Rprop
11
楼
RtlFreeThreadActivationContextStack();
RtlExitUserThread(code);
2014-7-30 15:58
0
miaoerst
雪 币:
12
活跃值:
(70)
能力值:
( LV2,RANK:10 )
在线值:
发帖
3
回帖
16
粉丝
0
关注
私信
miaoerst
12
楼
使用exitprocess搞定了, 谢谢大神们的帮助.
2014-7-30 16:52
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
miaoerst
3
发帖
16
回帖
10
RANK
关注
私信
他的文章
[求助]dexhunter得到的odex文件无法打开
2143
脱离c库后return无法退出
5150
win7 ie8中dns调用hook不到recvfrom的问题
7268
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部