`

Activex控件在IE中也可以不显示安全提示

阅读更多

转csdn网友shepherds()

在classview下,向目录的第一个.h文件(即App启动头文件)中加入以下内容:

  1. //创建Component Categories中的初始化安全和脚本安全项   
  2. HRESULT  CreateComponentCategory(CATID catid,  WCHAR * catDescription);  
  3. //在CLSID中创建与Component Categories中初始化安全和脚本安全项中相对应的implemented Categories项   
  4. HRESULT  RegisterCLSIDInCategory(REFCLSID clsid, CATID catid);  
  5. //注销与CLSID中的相应implemented Categories项,一般用不到,因为其它程序可能也会用到这此项   
  6. HRESULT  UnRegisterCLSIDInCategory(REFCLSID clsid, CATID catid);  
  7.   
  8. extern   const  GUID CDECL _tlid;  
  9. extern   const  GUID CDECL CLSID_SafeItem;  
  10.   
  11. extern   const   WORD  _wVerMajor;  
  12. extern   const   WORD  _wVerMinor;  
  13.   
  14. 在对就的.cpp文件中加入以下内容,如果原来程序中已经有的,只改动其中的多余部分即可:  
  15.   
  16. //设置控件与注册表相关的类型库ID,后面跟有version(1.0)字样,从本工程的.idl文件中获取   
  17. const  GUID CDECL BASED_CODE _tlid =  
  18. { 0xB926A326, 0xBE91, 0x4337, { 0xA1, 0xDC, 0x76, 0x1B, 0x73, 0x15, 0x6B, 0x23 } };  
  19. //控件在注册表中的CLSID,后面跟有control字样,从本工程的.idl文件中获取   
  20. const  GUID CDECL CLSID_SafeItem =  
  21. { 0xAF546E3F, 0xB5B8, 0x42D6, {0xBB, 0x74, 0x84, 0xB7, 0x25, 0xC0, 0x38, 0x4D}};  
  22.   
  23. const   WORD  _wVerMajor = 1;  
  24. const   WORD  _wVerMinor = 0;  
  25.   
  26. STDAPI DllRegisterServer(void )  
  27. {  
  28. HRESULT  hr;  
  29.   
  30. AFX_MANAGE_STATE(_afxModuleAddrThis);  
  31.   
  32. if  (!AfxOleRegisterTypeLib(AfxGetInstanceHandle(), _tlid))  
  33. return  ResultFromScode(SELFREG_E_TYPELIB);  
  34.   
  35. if  (!COleObjectFactoryEx::UpdateRegistryAll(TRUE))  
  36. return  ResultFromScode(SELFREG_E_CLASS);  
  37. //创建脚本安全“补充”项,非CLSID中   
  38. hr = CreateComponentCategory(CATID_SafeForScripting, L"Controls safely scriptable!" );  
  39. if  (FAILED(hr))  
  40. return  hr;  
  41. //创建初始化安全“补充”项,非CLSID中   
  42. hr = CreateComponentCategory(CATID_SafeForInitializing, L"Controls safely initializable from persistent data!" );  
  43. if  (FAILED(hr))  
  44. return  hr;  
  45. //设置控件CLSID中补充项的脚本安全项,与“补充”项中的脚本安全项对应   
  46. hr = RegisterCLSIDInCategory(CLSID_SafeItem, CATID_SafeForScripting);  
  47. if  (FAILED(hr))  
  48. return  hr;  
  49. //设置控件CLSID中补充项的初始化安全项,与“补充”项中的初始化安全项对应   
  50. hr = RegisterCLSIDInCategory(CLSID_SafeItem, CATID_SafeForInitializing);  
  51. if  (FAILED(hr))  
  52. return  hr;  
  53.   
  54. return  NOERROR;  
  55. }  
  56.   
  57.    
  58.   
  59. // DllUnregisterServer - Removes entries from the system registry   
  60.   
  61. STDAPI DllUnregisterServer(void )  
  62. {  
  63. //HRESULT hr;   
  64. AFX_MANAGE_STATE(_afxModuleAddrThis);  
  65.   
  66. if  (!AfxOleUnregisterTypeLib(_tlid, _wVerMajor, _wVerMinor))  
  67. return  ResultFromScode(SELFREG_E_TYPELIB);  
  68.   
  69. if  (!COleObjectFactoryEx::UpdateRegistryAll(FALSE))  
  70. return  ResultFromScode(SELFREG_E_CLASS);  
  71.   
  72. //hr=UnRegisterCLSIDInCategory(CLSID_SafeItem, CATID_SafeForInitializing);   
  73. //if (FAILED(hr))   
  74. //return hr;   
  75. //hr=UnRegisterCLSIDInCategory(CLSID_SafeItem, CATID_SafeForScripting);   
  76. //if (FAILED(hr))   
  77. //return hr;   
  78.   
  79. return  NOERROR;  
  80. }  
  81.   
  82. HRESULT  CreateComponentCategory(CATID catid,  WCHAR * catDescription)  
  83. {  
  84. ICatRegister* pcr = NULL ;  
  85. HRESULT  hr = S_OK ;  
  86.   
  87. hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr,   
  88. NULL, CLSCTX_INPROC_SERVER, IID_ICatRegister, (void **)&pcr);  
  89. if  (FAILED(hr))  
  90. return  hr;  
  91.   
  92. // Make sure the HKCR\Component Categories\{..catid...}   
  93. // key is registered.   
  94. CATEGORYINFO catinfo;  
  95. catinfo.catid = catid;  
  96. catinfo.lcid = 0x0409 ; // english   
  97.   
  98. // Make sure the provided description is not too long.   
  99. // Only copy the first 127 characters if it is.   
  100. int  len = wcslen(catDescription);  
  101. if  (len>127)  
  102. len = 127;  
  103. wcsncpy(catinfo.szDescription, catDescription, len);  
  104. // Make sure the description is null terminated.   
  105. catinfo.szDescription[len] = '\0' ;  
  106.   
  107. hr = pcr->RegisterCategories(1, &catinfo);  
  108. pcr->Release();  
  109.   
  110. return  hr;  
  111. }  
  112.   
  113. HRESULT  RegisterCLSIDInCategory(REFCLSID clsid, CATID catid)  
  114. {  
  115. // Register your component categories information.   
  116. ICatRegister* pcr = NULL ;  
  117. HRESULT  hr = S_OK ;  
  118. hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr,   
  119. NULL, CLSCTX_INPROC_SERVER, IID_ICatRegister, (void **)&pcr);  
  120. if  (SUCCEEDED(hr))  
  121. {  
  122. // Register this category as being "implemented" by the class.   
  123. CATID rgcatid[1] ;  
  124. rgcatid[0] = catid;  
  125. hr = pcr->RegisterClassImplCategories(clsid, 1, rgcatid);  
  126.   
  127. if  (FAILED(hr))  
  128. return  hr;  
  129. }  
  130. if  (pcr != NULL)  
  131. pcr->Release();  
  132. return  hr;  
  133. }  
  134.   
  135.   
  136. HRESULT  UnRegisterCLSIDInCategory(REFCLSID clsid, CATID catid)  
  137. {  
  138. ICatRegister* pcr = NULL ;  
  139. HRESULT  hr = S_OK ;  
  140.   
  141. hr = CoCreateInstance(CLSID_StdComponentCategoriesMgr,   
  142. NULL, CLSCTX_INPROC_SERVER, IID_ICatRegister, (void **)&pcr);  
  143. if  (SUCCEEDED(hr))  
  144. {  
  145. // Unregister this category as being "implemented" by the class.   
  146. CATID rgcatid[1] ;  
  147. rgcatid[0] = catid;  
  148. hr = pcr->UnRegisterClassImplCategories(clsid, 1, rgcatid);  
  149. }  
  150.   
  151. if  (pcr != NULL)  
  152. pcr->Release();  
  153.   
  154. return  hr;  
  155. }  


另外
1 在HTML中写<object>标签时,把object的写法放在一个.js文件里,用document.write输出,这样不会提示激活!
  1.  //myactivex.js  
  2. document.write("< object   name = 'ActiveXName1'   id = 'ActiveXName1'   classid = '................' > ");  
  3. ...  
  4. document.write("< param... ");  //如果有参数的话  
  5. ...  
  6. document.write("</ object > ");  
  7. ...  

2 获取事件可以用
  1. < SCRIPT   LANGUAGE = "JavaScript"   for = "ActiveXName1"   EVENT = "OnMyClick" >   
  2.     alert(arguments.length);// arguments 这里是取参数  
  3. </ SCRIPT >  

分享到:
评论

相关推荐

    pendulum-2.1.2-cp39-cp39-win32.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    Nginx配置文件中FastCGI相关参数理解

    Nginx配置文件中FastCGI相关参数理解

    Pillow-8.4.0-cp310-cp310-win32.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    yolo算法-刹车灯探测器数据集-1070张图像带标签-交通信号灯.zip

    yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值

    pocketsphinx-0.1.15-cp36-cp36m-win32.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    NI-VISA资源安装包

    Windows下2024Q4版本

    【java毕业设计】网上电子书店源码(ssm+mysql+说明文档+LW).zip

    功能说明: (a) 管理员;管理员使用本系统涉到的功能主要有主页、个人中心、用户管理、一级分类管理、二级分类管理、电子书管理、下单购买管理、我的书籍管理、留言反馈、系统管理等功能。 (b) 用户;用户进入系统可以实现首页、电子书、通知公告、留言反馈、个人中心、后台管理、在线客服等,登录注册后可以对主页、个人中心、下单购买管理、我的书籍管理、留言反馈等功能进行详细操作。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    【java毕业设计】网上点餐系统源码(ssm+mysql+说明文档).zip

    环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    pocketsphinx-0.1.15-cp39-cp39-win_amd64.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    cn-visual-studio-2010-ultimate-x86-dvd-532347.z01

    cn-visual-studio-2010-ultimate-x86-dvd-532347.z01

    智慧城市照明智能管理系统解决方案PPT(27页).pptx

    城市运行管理的重要性与挑战 城市运行体系是以人为本的服务和经济发展体系,涉及决策、管理和执行三个层次。当前城市运行管理面临城市化快速发展、资源环境制约和社会矛盾突出等挑战。信息技术的发展为城市运行管理提供了重要手段,城市信息化经历了数字化、智能化到智慧化的发展过程。我国城市信息化虽取得进展,但仍处于初级阶段,存在缺乏整体规划、资源浪费和协作效率不高等问题。 智慧城市综合运行管理解决方案 智慧城市运行管理中心(SCOC)是支撑城市运行综合管理的神经中枢,旨在掌控城市运行综合体征,促进服务型政府转型。该中心通过全面整合运行资源,服务城市未来发展,提升城市运行水平和突发事件处置效率。中心纵向提升综合职能,横向贯通专业分工,包括综合管理平台、专业管理平台和业务操作平台,覆盖城市交通、公共安全、生态环境等多个领域。 智慧城市综合运行管理平台的结构与功能 智慧城市综合运行管理平台包括决策支持系统、处置系统、基础设施和监测系统。平台通过综合展现系统、综合应急指挥系统、综合运行业务联动系统等,实现城市运行的综合监测和管理。物联网数据采集系统利用网络通讯技术,实现城市物联网设备的高效运行。平台还包含云计算业务支撑系统、城市基础数据库、视频图像云平台等,以支持城市运行管理的各个方面。 智慧城市综合运行管理解决方案的优势 该解决方案具有三个核心优势:首先,它提供了完整的智慧城市视角,不仅仅是指挥中心或数据中心,而是智慧城市的实际载体。其次,它建立了完整的城市运行联动体系,打通业务部门壁垒,形成有机融合的业务联动平台,提升业务处理效率和服务水平。最后,方案凝聚了多年智慧城市建设咨询经验,为城市运行管理提供了成熟的解决方案。 项目实施建议 智慧城市运行管理中心的建设思路和项目实施建议是方案的重要组成部分,旨在指导城市如何有效实施智慧城市运行管理解决方案,以应对城市运行管理的挑战,提升城市管理的智能化和效率。通过这些建议,城市能够更好地规划和实施智慧城市项目,实现可持续发展。

    persistent-4.9.0-cp39-cp39-win32.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    pocketsphinx-0.1.15-cp27-cp27m-win_amd64.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    域外渗透域内思路:使用工具与技术进行域内侦察与暴力破解

    内容概要:本文介绍了一种通过域外渗透手段进入域内网络的技术思路。主要内容涵盖了使用VPN拨入内网,利用nbt.exe、ladon.exe、nmap等工具进行网络扫描,查找域控制器,以及使用bash和PowerShell脚本进行域用户口令暴力破解的方法。同时介绍了几种常用工具如ldapsearch、PowerView和PingCastle的使用方法,以及它们在获取域内信息方面的具体应用场景。 适合人群:网络安全专业人员、红队成员、渗透测试工程师等从事信息安全相关工作的技术人员。 使用场景及目标:帮助安全专家在进行渗透测试时有效地获取域内网络的关键信息,评估域的安全性,识别潜在的安全漏洞,并提出改进建议。 其他说明:文章提供了详细的命令示例和配置指南,适用于Windows和Linux环境,同时也提到了一些需要注意的安全事项,如防止触发安全警报等。

    Vue搭建AudioPlaySation(三)

    Vue搭建AudioPlaySation(三)

    yolo算法-石头剪刀数据集-7331张图像带标签.zip

    yolo系列算法目标检测数据集,包含标签,可以直接训练模型和验证测试,数据集已经划分好,包含数据集配置文件data.yaml,适用yolov5,yolov8,yolov9,yolov7,yolov10,yolo11算法; 包含两种标签格:yolo格式(txt文件)和voc格式(xml文件),分别保存在两个文件夹中; yolo格式:<class> <x_center> <y_center> <width> <height>, 其中: <class> 是目标的类别索引(从0开始)。 <x_center> 和 <y_center> 是目标框中心点的x和y坐标,这些坐标是相对于图像宽度和高度的比例值,范围在0到1之间。 <width> 和 <height> 是目标框的宽度和高度,也是相对于图像宽度和高度的比例值

    psf-2021.6.6-cp37-cp37m-win32.whl.rar

    python whl离线安装包 pip安装失败可以尝试使用whl离线安装包安装 第一步 下载whl文件,注意需要与python版本配套 python版本号、32位64位、arm或amd64均有区别 第二步 使用pip install XXXXX.whl 命令安装,如果whl路径不在cmd窗口当前目录下,需要带上路径 WHL文件是以Wheel格式保存的Python安装包, Wheel是Python发行版的标准内置包格式。 在本质上是一个压缩包,WHL文件中包含了Python安装的py文件和元数据,以及经过编译的pyd文件, 这样就使得它可以在不具备编译环境的条件下,安装适合自己python版本的库文件。 如果要查看WHL文件的内容,可以把.whl后缀名改成.zip,使用解压软件(如WinRAR、WinZIP)解压打开即可查看。 为什么会用到whl文件来安装python库文件呢? 在python的使用过程中,我们免不了要经常通过pip来安装自己所需要的包, 大部分的包基本都能正常安装,但是总会遇到有那么一些包因为各种各样的问题导致安装不了的。 这时我们就可以通过尝试去Python安装包大全中(whl包下载)下载whl包来安装解决问题。

    【java毕业设计】古诗词数字化平台源码(ssm+mysql+说明文档+LW).zip

    功能说明: 古诗词数字化平台的功能已基本实现,主要实现主页、个人中心、用户管理、诗词信息管理、分类管理、诗人信息管理、个人分享管理、系统管理等功能的操作系统。 环境说明: 开发语言:Java 框架:ssm,mybatis JDK版本:JDK1.8 数据库:mysql 5.7及以上 数据库工具:Navicat11及以上 开发软件:eclipse/idea Maven包:Maven3.3及以上 服务器:tomcat7及以上

    YOLO格式下的行人识别数据集

    这个文档中包含了行人数据集约四千张,在train文件中就包含了三千多张数据集。工具是使用了Labelimg进行标注。

    中介与调节效应分析素材-精心整理资料.zip

    中介与调节效应分析素材-精心整理资料.zip

Global site tag (gtag.js) - Google Analytics