嗨,我有遗留的ActiveX(ATL),如果从受信任的站点安全区域加载,它可以正常工作 . 我想在代码中添加验证,确保客户将activeX的主机添加到受信任的站点,如果不是只是发出警告 .
我应该使用什么API? (浏览器是IE7和UP) .
谢谢
您可以使用IInternetSecurityManager::MapUrlToZone将网址映射到本机代码中的区域 .
来自MSDN的示例代码:
const char* rgZoneNames[] = { "Local", "Intranet", "Trusted", "Internet", "Restricted" }; IInternetSecurityManager* pInetSecMgr; HRESULT hr = CoCreateInstance(CLSID_InternetSecurityManager, NULL, CLSCTX_ALL, IID_IInternetSecurityManager, (void **)&pInetSecMgr); if (SUCCEEDED(hr)) { DWORD dwZone; hr = spInetSecMgr->MapUrlToZone(szUrl, &dwZone, 0); if (hr == S_OK) { if (dwZone < 5) { printf("ZONE: %s (%d)\n", rgZoneNames[dwZone], dwZone); } else { printf("ZONE: Unknown (%d)\n", dwZone); } } else { printf("ZONE: Error %08x\n", hr); } pInetSecMgr->Release(); }
1 回答
您可以使用IInternetSecurityManager::MapUrlToZone将网址映射到本机代码中的区域 .
来自MSDN的示例代码: