首页
社区
课程
招聘
[原创]线程初始化过程 PK 加载DLL过程(详细)
发表于: 2014-3-20 11:51 25906

[原创]线程初始化过程 PK 加载DLL过程(详细)

2014-3-20 11:51
25906
收藏
免费 5
支持
分享
最新回复 (41)
雪    币: 1
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
26
"但是代码太风骚了,可以做手脚↓↓↓"

我觉得LZ也很风骚...
2014-3-24 15:26
0
雪    币: 3
活跃值: (52)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
27
你玩的那个exe呢,能share下看看吗,Drop Split
2014-3-25 11:28
0
雪    币: 3
活跃值: (52)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
28
你玩的那个exe呢 ,能share下看看吗
2014-3-25 11:29
0
雪    币: 74
活跃值: (748)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
29
膜拜学习
2014-3-25 22:58
0
雪    币: 659
活跃值: (499)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
30
createthread不可用?Dll中创建窗口就得用这个
2014-3-26 15:54
0
雪    币: 81
活跃值: (100)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
31
硬要用也能用起来,会遇到些奇怪的问题,所以不理解为什么
2014-3-26 15:57
0
雪    币: 659
活跃值: (499)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
32
网上标准的代码,不创建线程如何建窗口,我都当模板用了,没见出过问题
2014-3-26 18:05
0
雪    币: 281
活跃值: (28)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
33
可以用,我说的是dllmain不返回的使用情况  
2014-3-26 18:22
0
雪    币: 415
活跃值: (2633)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
还是不理解为什么大部分情况下,在dllmain里面LoadLibrary是没问题的,只有很少的时候会出问题。
2014-3-26 22:46
0
雪    币: 415
活跃值: (2633)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
35
楼主能帮我解释一下,有时在DllMain里面LoadLibrary卡死,到底是什么原因导致的,可不可以规避掉??
2014-3-26 23:00
0
雪    币: 219
活跃值: (778)
能力值: (RANK:290 )
在线值:
发帖
回帖
粉丝
36
TDL3
2014-3-28 00:31
0
雪    币: 281
活跃值: (28)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
37
被发现了 tdss
2014-3-28 00:38
0
雪    币: 51
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
38
mark下,风骚的飘过~~~~
2014-3-30 21:23
0
雪    币: 77
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
mark
2014-3-31 16:24
0
雪    币: 185
活跃值: (86)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
40
进入DllMain已经得到LdrLoaderLock了,所以表面上LoadLibrary是不会有问题的,因为LoadLibrary可以得到这个锁。但是被加载的库可能会引起其他的线程竞争这个锁,会引起死锁。DllMain里面调用任何API都要了解这个API的行为,否则都是危险的。有个例子,比如当前线程在COM STA (SINGLE THREAD APARTMENT), DllMain里面创建一个CoCreateInstance一个MTA的COM, COM DLL会被另外一个线程加载,也进入LoadLibrary,在MTA线程获得LdrLoaderLock之前,当前STA线程的CoCreateInstance不会返回,所以死锁了。

这里有篇非常详细的文档:
http://msdn.microsoft.com/en-us/library/windows/desktop/dn633971%28v=vs.85%29.aspx
2014-4-13 17:47
0
雪    币: 256
活跃值: (26)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
搞定了。。。
2014-6-30 18:07
0
雪    币: 45
活跃值: (134)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
42
mark 回头慢慢看
2015-3-3 07:55
0
游客
登录 | 注册 方可回帖
返回
//