[原创] 组件的自动注册与卸载

王朝vc·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

1.对于进程内组件,可以利用windows系统提供的Regsrv32.exe.

比如运行:RegSrv32 d:\com.dll (RegSrv32运行时调用com.dll的引出函数DLLR

egisterServer,真正注册的是在DLLRegisterServer中实现)

如果要反注册,可以用:RegSrv32 /u d:\com.dll(此时调用DLLUnregSrvServer函数)

2.对于进程外组件,因为它是可执行文件,不能也没有必要提供引出函数供其他程序调用来实现注册.

COM规范规定,支持自注册的进程外组件必须支持两个命令参数/RegServer和/UnregServer,来实现注册和反注册操作.

3.实现自动卸载

组件对象被卸载的条件:1,组件中对象数为0 2,类厂锁计数器为0.

COM中提供了一个函数CoFreeAllLibraries,它能检测当前进程中所有组件程序,当发现某个满足条件时,就调用

FreeLibrary卸载组件

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航