注册 jmail.dll 组件。如果让注册成功的对话框不弹出来?或者判断是否已经注册成功过。

wdy9927 2006-09-01 11:56:31
注册 jmail.dll 组件。如果让注册成功的对话框不弹出来?或者判断是否已经注册成功过。

实在不行就想在安装程序中注册一次。但在安装程序中如何注册组件呢?

现在在程序中使用的是
regsvr32.exe d:\jmail.dll

...全文
515 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pp7765 2006-09-02
  • 打赏
  • 举报
回复
每次注册前先反注册一下,就没啥担心的了
element_cn 2006-09-01
  • 打赏
  • 举报
回复
regsvr32 "d:\jmail.dll"
yjgx007 2006-09-01
  • 打赏
  • 举报
回复
对于COM组件,通常有转出两个注册接口函数
DllRegisterServer()注册
DllUnregisterServer()反注册

如果程序启动每次调用,对系统不会有影响,注册和反注册过程就是对注册表的操作.
wdy9927 2006-09-01
  • 打赏
  • 举报
回复
yjgx007(who's superior)
您的方法是怎么个原理呢?测试了一下,果然好使。
但问题是,每次启动都注册对系统没有影响吧。
wdy9927 2006-09-01
  • 打赏
  • 举报
回复
调用 cmd 然后 regsvr32.exe d:\jmail.dll /s

使用参数 /s ,可以把成功提示去掉。

但每次程序运行时都去注册,会不会对系统有什么不好的影响?

最好还是能够先判断,然后再注册,或者换个方法。
yjgx007 2006-09-01
  • 打赏
  • 举报
回复
LPCSTR szFunction = "DllRegisterServer";
HRESULT hr = S_OK;

HMODULE hMod = LoadLibrary(szDll);
typedef HRESULT (_stdcall *DLLPROC)();
DLLPROC pfnDllProc = reinterpret_cast<DLLPROC>(GetProcAddress(hMod, szFunction));
hr = (*pfnDllProc)();

这样注册,hr == 0表示成 功, 否则失败

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧