怎样制作插件的安装程序

sunyanzi 2003-12-22 06:18:31
我用ATL做了一个IE插件,怎么给它制作一个安装/卸载程序呢?
用什么工具比较好?需要注意些什么?谢谢
...全文
73 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunyanzi 2004-01-19
  • 打赏
  • 举报
回复
都没明白我的意思,好在我自己解决了,让我怎么给分?
gjd111686 2003-12-23
  • 打赏
  • 举报
回复
MSDN中有个例子
#include "io.h"

typedef DWORD(CALLBACK * PREG)(void);
void CRegOCXDlg::OnReg()
{
// TODO: Add your control notification handler code here
TCHAR AppFullPath[_MAX_PATH];
GetModuleFileName(NULL,AppFullPath,_MAX_PATH);
CString m_AppPath;
m_AppPath=AppFullPath;
int iAppPosition;
iAppPosition=m_AppPath.ReverseFind('\\');
m_AppPath=m_AppPath.Mid(0,iAppPosition+1);
char pOCXPath[100];
PREG lpDllEntryPoint;
HINSTANCE hLib;
CString m_OCXFileName;
if(m_OcxList.GetCurSel()==CB_ERR)
{
m_OCXFileName="NULL";
(CButton*)GetDlgItem(IDC_REG)->EnableWindow(FALSE);
}
else
{
m_OcxList.GetLBText(m_OcxList.GetCurSel(),m_OCXFileName);
(CButton*)GetDlgItem(IDC_REG)->EnableWindow(TRUE);
}
if(m_OCXFileName=="NULL")
{
(CButton*)GetDlgItem(IDC_REG)->EnableWindow(FALSE);
}
else
{
sprintf(pOCXPath,"%s%s",m_AppPath,m_OCXFileName);
hLib=LoadLibrary(pOCXPath);
if(hLib)
{
lpDllEntryPoint=(PREG)GetProcAddress(hLib,_T("DllRegisterServer"));
if(lpDllEntryPoint!=NULL)
{
(*lpDllEntryPoint)();
AfxMessageBox("组件注册初始成功!",MB_ICONINFORMATION);
FreeLibrary(hLib);
}
else
{
AfxMessageBox("组件注册初始失败!",MB_ICONINFORMATION);
}
}
}
}
cl204 2003-12-22
  • 打赏
  • 举报
回复
通过regsvr32.exe加-u参数将其卸载即可或直接将注册表中 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects 下的 CLSID 删掉即可。

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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