microsoft web brower控件禁止运行脚本方法

首先控件宿主应该先要重写一个虚函数

CWnd::OnAmbientProperty 

 

The framework calls this member function to obtain ambient property values from a window that contains OLE controls.

virtual BOOL OnAmbientProperty(
   COleControlSite* pSite,
   DISPID dispid,
   VARIANT* pvar 
);
 
       

Parameters

pSite

Pointer to the site of the control that requested the ambient property.

dispid

The dispatch ID of the requested ambient property.

pvar

Pointer to a caller-allocated VARIANT structure, through which the ambient property's value will be returned.

TRUE if the ambient property is supported; FALSE if not.

Override this function to alter the default ambient property values returned by an OLE control container to its controls. 

Any

ambient property requests not handled by an overriding function should be forwarded to the base class implementation.

 

 

 

然后在函数中添加

if (dispid == DISPID_AMBIENT_DLCONTROL) { pvar-> vt = VT_I4; pvar-> lVal = DLCTL_NO_SCRIPTS | DLCTL_NO_JAVA | DLCTL_NO_RUNACTIVEXCTLS | DLCTL_NO_DLACTIVEXCTLS; return TRUE; }

你可能感兴趣的:(VC&C++开发相关,microsoft,脚本,web,function,class,java)