VC语言

本类阅读TOP10

·VC++ 学习笔记(二)
·用Visual C++打造IE浏览器(1)
·每个开发人员现在应该下载的十种必备工具
·教你用VC6做QQ对对碰外挂程序
·Netmsg 局域网聊天程序
·Windows消息大全
·VC++下使用ADO编写数据库程序
·VC++学习笔记(四)
·非法探取密码的原理及其防范
·怎样在VC++中访问、修改注册表

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
[原创] 组件的自动注册与卸载

作者:未知 来源:月光软件站 加入时间:2005-6-5 月光软件站

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卸载组件



相关文章

相关软件