用EntrianAttach对原进程的副作用
2025-07-11 14:10:16
标签: entrianattach thread cwinapp
当用Visual Studio上的Entrian
Attach插件后,发现用了,程序会出错,不用正常。区别在于AfxGetThread返回空。经过反复调试,发现区别在于用了Entrian
Attach后,创建了一个新线程,而区别就在于这时进程初始化代码的CWinApp的子类也在这个新线程初始化,而不是main,当main
thread代码去调用AfxGetThread时,发现App不是自己线程初始化的,所以得到的Thread就为空。
这就造成了用不用Entrian Attach的区别。
用EntrianAttach对原进程的副作用
当用Visual Studio上的Entrian Attach插件后,发现用了,程序会出错,不用正常。区别在于AfxGetThread返回空。经过反复调试,发现区别在于用了Entrian Attach后,创建了一个新线程,而区别就在于这时进程初始化代码的CWinApp的子类也在这个新线程初始化,而不是main,当main thread代码去调用AfxGetThread时,发现App不是自己线程初始化的,所以得到的Thread就为空。
这就造成了用不用Entrian Attach的区别。