VC6.0 ATL方式的OCX去除安全警告框

          在XXXCtrl.h的文件中加入以下步骤的内容
          1、包含atlctl.h头文件 

          2、在class ATL_NO_VTABLE CXXXCtrl :
                   public CComObjectRootEx<CComSingleThreadModel>,
                   public CComCoClass<CXXXCtrl, &CLSID_XXXCtrl>,
                   public IDispatchImpl<IXXXCtrl, &IID_IXXXCtrl, &LIBID_XXXXXLib>,
                   public IObjectSafety //增加该部分

          3、在BEGIN_COM_MAP(CXXXCtrl)
                          COM_INTERFACE_ENTRY(IXXXCtrl)
                          COM_INTERFACE_ENTRY(IDispatch)
                          COM_INTERFACE_ENTRY(IObjectSafety)  //增加该部分
                    END_COM_MAP()

               增加以下两个函数

                   STDMETHODIMP GetInterfaceSafetyOptions( REFIID riid, DWORD *pdwSupportedOptions, DWORD *pdwEnabledOptions )
                   {
                             *pdwSupportedOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER | INTERFACESAFE_FOR_UNTRUSTED_DATA;
                             *pdwEnabledOptions = *pdwSupportedOptions;
                              return S_OK;
                    }

                   STDMETHODIMP SetInterfaceSafetyOptions(REFIID riid, DWORD dwOptionSetMask, DWORD dwEnabledOptions)
                   {
                              return S_OK;
                   }

           到此操作完成,试试你的OCX就可以去除安全警告框。


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值