能力值:
(RANK:260 )
|
-
-
2 楼
你所说的“弹出了注册表程序”,是不是指打开了regedit.exe?(它叫注册表编辑器,而不是什么注册表程序) 一个DLL的入口点函数,在以下几种情况被调用(详见MSDN),而不论它被哪个进程加载:
it is called by the system when processes and threads are initialized and terminated, or upon calls to the LoadLibrary and FreeLibrary functions.
由fdwReason参数的值指出当前是哪种情况被调用:
DLL_PROCESS_ATTACH
DLL_THREAD_ATTACH
DLL_THREAD_DETACH
DLL_PROCESS_DETACH
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
感谢楼上的回复。确实是弹出了注册表编辑器。
我还是不明白为什么会弹出注册表编辑器?
还有就是regsvr32会不会调用入口点呢?也就是regsvr32 到底初始没初始线程呢?
|
能力值:
(RANK:260 )
|
-
-
4 楼
regsvr32,简化一些,就是先LoadLibrary(...),再GetProcAdress(,"DllRegisterServer",...);然后CALL一下得到的DllRegisterServer。
具体会有什么行为,完全由程序中的DllRegisterServer函数决定的,它只要CreateProcess("regedit.exe",...),那就会弹出regedit了;如果它ExitWindowsEx,那就是关机了。
第二个问题:你觉得什么是线程?每一个进程,至少有一个主线程,它是进程创建时由系统创建的;否则,进程如何运行?
|
|
|