BOOL RegisterOcx(LPCTSTR OcxFileName)
{
LPCTSTR pszDllName = OcxFileName ; //ActiveX控件的路径及文件名
HINSTANCE hLib = LoadLibrary(pszDllName); //装载ActiveX控件
if (hLib < (HINSTANCE)HINSTANCE_ERROR)
{
return FALSE ;
}
FARPROC lpDllEntryPoint;
lpDllEntryPoint = GetProcAddress(hLib,_T("DllRegisterServer")); //获取注册函数DllRegisterServer地址
if(lpDllEntryPoint!=NULL) //调用注册函数DllRegisterServer
{
if(FAILED((*lpDllEntryPoint)()))
{
FreeLibrary(hLib);
return FALSE ;
}
return TRUE ;
}
else
return FALSE ;
}
//----------------------------------
在程序中注销ActiveX控件(.OCX)的函数
BOOL UnRegisterOcx(LPCTSTR OcxFileName)
{
LPCTSTR pszDllName = OcxFileName ; //ActiveX控件的路径及文件名
HINSTANCE hLib = LoadLibrary(pszDllName); //装载ActiveX控件
if (hLib < (HINSTANCE)HINSTANCE_ERROR)
{
return FALSE ;
}
FARPROC lpDllEntryPoint;
lpDllEntryPoint = GetProcAddress(hLib,_T("DllUnregisterServer")); //获取注册函数DllUnregisterServer地址
if(lpDllEntryPoint!=NULL) //调用注册函数DllUnregisterServer
{
if(FAILED((*lpDllEntryPoint)()))
{
FreeLibrary(hLib);
return FALSE ;
}
return TRUE ;
}
else
return FALSE ;
}
{
LPCTSTR pszDllName = OcxFileName ; //ActiveX控件的路径及文件名
HINSTANCE hLib = LoadLibrary(pszDllName); //装载ActiveX控件
if (hLib < (HINSTANCE)HINSTANCE_ERROR)
{
return FALSE ;
}
FARPROC lpDllEntryPoint;
lpDllEntryPoint = GetProcAddress(hLib,_T("DllRegisterServer")); //获取注册函数DllRegisterServer地址
if(lpDllEntryPoint!=NULL) //调用注册函数DllRegisterServer
{
if(FAILED((*lpDllEntryPoint)()))
{
FreeLibrary(hLib);
return FALSE ;
}
return TRUE ;
}
else
return FALSE ;
}
//----------------------------------
在程序中注销ActiveX控件(.OCX)的函数
BOOL UnRegisterOcx(LPCTSTR OcxFileName)
{
LPCTSTR pszDllName = OcxFileName ; //ActiveX控件的路径及文件名
HINSTANCE hLib = LoadLibrary(pszDllName); //装载ActiveX控件
if (hLib < (HINSTANCE)HINSTANCE_ERROR)
{
return FALSE ;
}
FARPROC lpDllEntryPoint;
lpDllEntryPoint = GetProcAddress(hLib,_T("DllUnregisterServer")); //获取注册函数DllUnregisterServer地址
if(lpDllEntryPoint!=NULL) //调用注册函数DllUnregisterServer
{
if(FAILED((*lpDllEntryPoint)()))
{
FreeLibrary(hLib);
return FALSE ;
}
return TRUE ;
}
else
return FALSE ;
}
本文介绍了一个用于注册ActiveX控件的函数RegisterOcx,通过加载库文件并调用DllRegisterServer来完成注册过程。同时提供了一个用于卸载ActiveX控件的函数UnRegisterOcx,通过调用DllUnregisterServer来实现卸载。

1243

被折叠的 条评论
为什么被折叠?



