怎样在DotNet Framework中实现对象安全接口(IObjectSafety)
在我实现的模块中,需要采用C#包装一个ActiveX Control,并且通过IE在客户端脚本中调用。由于IE安全策略的设置,必须实现IObjectSafety接口在能够保证正确运行。
在.Net Framework中没有IObjectSafe的定义,我的方案是按照IObjectSafety的形式自己定义该接口,并且在需要支持的控件中实现。
IObjectSafety的定义如下:
[Guid("CB5BDC81-93C1-11cf-8F20-00805F2CD064")]
public interface IObjectSafety
{
// methods
unsafe void GetInterfacceSafyOptions(
System.Int32 riid,
System.Int32* pdwSupportedOptions,
System.Int32* pdwEnabledOptions);
void SetInterfaceSafetyOptions(
System.Int32 riid,
System.Int32 dwOptionsSetMask,
System.Int32 dwEnabledOptions);
}
在控件中继承该接口,并且实现其中的两个方法。但是在IE中调用,装载页面时会产生严重的错误,关闭应用程序。
请教各位原因何在,有没有更好的解决方法。
谢谢先。