把下面的 CLASSID 换成你的 OCX 控件的就可以了:
BOOL CYourApp::IsInstalled()
{
HKEY hKey;
BOOL bPresent;
TCHAR szPath[_MAX_PATH];
DWORD dwRegType;
DWORD cbData = sizeof szPath * sizeof TCHAR;
hKey = NULL;
bPresent = FALSE;
::RegOpenKey(HKEY_CLASSES_ROOT, _T("CLSID//{D27CDB6E-AE6D-11cf-96B8-444553540000}//InprocServer32"), &hKey);
if(hKey)
{
HANDLE hfile;
szPath[0] = 0;
::RegQueryValueEx(hKey, NULL, NULL, &dwRegType, (LPBYTE)szPath, &cbData);
::RegCloseKey(hKey);
hfile = ::CreateFile(szPath, 0, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
if(INVALID_HANDLE_VALUE != hfile)
{
bPresent = TRUE;
::CloseHandle(hfile);
}
}
return bPresent;
}
怎样判断一个特定的OCX控件是否已注册??
最新推荐文章于 2020-12-31 00:26:53 发布