今天测试IDispatchEx的示例代码中InvokeEx返回了E_ACCESSDENIED错误,为什么?
微软示例代码的地址:https://msdn.microsoft.com/en-us/library/sky96ah7我把它的HTML code保存在test.html里,然后在IE里打开test.html。
一直执行到
bstrName = SysAllocString(OLESTR("cat"));
hr = pdexScript->GetDispID(bstrName, 0, &dispid);
都是对的,获取到了dispid。但是后面的InvokeEx返回了E_ACCESSDENIED错误,有了解的请指点下。
<html>
<body>
<script type="text/javascript">
function cat()
{
// Create new element and assign the value 10
this.Bar = 10;
} function test()
{
// Construct new object
Obj = new Object(); // Create new element and assign function pointer
Obj.Elem = cat; // Call Elem method ("this" == Obj)
Obj.Elem(); // Obj.Bar now exists
}
test();
</script>
</body>
</html>
微软示例代码的地址:https://msdn.microsoft.com/en-us/library/sky96ah7我把它的HTML code保存在test.html里,然后在IE里打开test.html。
一直执行到
bstrName = SysAllocString(OLESTR("cat"));
hr = pdexScript->GetDispID(bstrName, 0, &dispid);
都是对的,获取到了dispid。但是后面的InvokeEx返回了E_ACCESSDENIED错误,有了解的请指点下。
<html>
<body>
<script type="text/javascript">
function cat()
{
// Create new element and assign the value 10
this.Bar = 10;
} function test()
{
// Construct new object
Obj = new Object(); // Create new element and assign function pointer
Obj.Elem = cat; // Call Elem method ("this" == Obj)
Obj.Elem(); // Obj.Bar now exists
}
test();
</script>
</body>
</html>
解决方案 »
- 用CRegKey的接口修改环境变量后, 导致带%的环境变量不可以识别。
- HTTP返回的UTF-8数据转换存在个别错误
- 如何判断oracle中的字段是否可以为空
- 怎么检查Mpeg2DecFilter.ax在我的系统已经注册过?
- 我要查看DLL的外部函数及其参数该怎么做?
- windows收藏夹中每个收藏项目的顺序问题?100分
- static DWORD WINAPI ThreadFuncAttach(INJECTLIBINFO *pInfo),DWORD后的WINAPI是什么意思啊
- 小问题:如何让控件在程序运行之后动态改变大小,比如说当基于对话框的窗口最大化之后,让其中的控件也相应地变大,以适应窗口的变化?
- 请问如何控制多个光驱的弹出和合上?
- 如何去掉标题栏,谢谢各位了
- stream!=NULL,求老师帮忙!
- MFC多线程,在同一窗口下运行显示
我查了些资料,有些是说IE9以后更新了什么权限之类的东西,英文太渣看不懂
https://connect.microsoft.com/IE/feedback/details/1062093/installation-of-kb3025390-breaks-out-of-process-javascript-execution-in-ie11
有时间帮看一下,是不是这个更新导致的?看不太懂,谢谢。
我想应该不是这个KB3021952 更新的问题。
我用了两台IE11的win7_64电脑。一个是运行正常的,一个是返回E_ACCESSDENIED错误的。
然后我看了"已安装的更新",两个电脑都有这个KB3021952包。
然后我卸载了运行正常的那台电脑的此更新,重启电脑后依然正常。
所以会不会是电脑或者IE11的版本哪里的设置问题可以导致E_ACCESSDENIED错?