zoukankan      html  css  js  c++  java
  • 【ATL】注册插件成功后自动设置浏览器允许弹出窗口注册表

    STDAPI DllInstall(BOOL bInstall, LPCWSTR pszCmdLine)
    {
    HRESULT hr = E_FAIL;
    
    static const wchar_t szUserSwitch[] = L"user";
    
    if(pszCmdLine != NULL)
    {
    if(_wcsnicmp(pszCmdLine,szUserSwitch,_countof(szUserSwitch)) == 0)
    ATL::AtlSetPerUserRegistration(true);
    }
    
    if(bInstall)
    {
    hr = DllRegisterServer();
    if(FAILED(hr))
    DllUnregisterServer();
    
    // 操作注册表(允许阻止的浏览器弹出窗口)
    HKEY hKEY;
    LPBYTE path_Get = new BYTE[256];
    DWORD type = REG_BINARY;
    DWORD dwBytes = 254;
    
    LPSTR data_set = "Software\Microsoft\Internet Explorer\New Windows\Allow";
    
    if(::RegOpenKeyExA(HKEY_CURRENT_USER,data_set,NULL,KEY_READ,&hKEY) == ERROR_SUCCESS)
    {
    if(::RegQueryValueExA(hKEY,"要设置的域名",NULL,&type,path_Get,&dwBytes) != ERROR_SUCCESS)
    {
    LPBYTE mContent = new BYTE[2];
    mContent[0] = 0x00;
    mContent[1] = 0x00;
    
    CRegKey key;
    key.Create(L"Software\Microsoft\Internet Explorer\New Windows\Allow");
    key.SetBinaryValue(L"要设置的域名",mContent,2);
    
    key.Close();
    }
    }
    
    ::RegCloseKey(hKEY);
    
    ::MessageBoxA(NULL,"您可以正常使用ActiveX插件功能","插件安装成功",MB_OK | MB_ICONINFORMATION);
    }
    else
    hr = DllUnregisterServer();
    
    return hr;
    }
    

      

  • 相关阅读:
    初识RabbitMQ
    ThreadPoolExecutor中execute和submit的区别
    MYSQL bin_log 开启及数据恢复
    MYSQL 悲观锁和乐观锁简单介绍及实现
    linux php多版本
    easyui汉化啊!
    虚化技术的额外开销
    拍脑袋空想不可能有创新
    大规模WEB服务技术
    xunsearch bsd 10.1安装心酸路。。。
  • 原文地址:https://www.cnblogs.com/briny/p/4654178.html
Copyright © 2011-2022 走看看