InvokeHelper()抛出访问被拒绝异常
InvokeHelper() throws Access is denied exception
社区,我有一个很有趣但同时又很沉重的问题。我有vb.net应用+ Service + c++应用。c++应用程序使用InvokeHelper()方法生成一些数据并进行回调:
InvokeHelper(0x60030000, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
eventType, eventValue);
第一个参数是应该调用的方法的dispid。奇怪的方法,但这不是我的代码,我不能改变这种方式。
在服务中,我用dispid属性标记的方法从c++应用程序中获得这个回调。
<DispId(&H60030000)>
Public Sub ServerEvent(ByVal vEventType As Integer, ByVal vEventValue As Object)
RaiseEvent ControlPanelStateChange(vEventType, vEventValue)
End Sub
如果我以admin身份登录,此代码可以正常工作。但是如果windows用户没有管理员权限,在调用InvokeHelper()方法之后,下一个异常发生:
application.exe中的0x75B7C42D (KernelBase.dll)第一次机会异常:0x80070005:访问被拒绝
你有什么想法吗?我玩过DCOM权限,但结果是一样的。
任何帮助都太棒了!
问题的解决方法是:
DCOMCNFG,右键单击我的计算机,选择属性-> COM证券选项卡->访问权限->单击编辑默认值,并添加网络服务,并赋予它允许本地访问权限。对
然后->启动和激活权限,单击编辑默认值并添加网络服务,并赋予其本地启动和本地激活权限。对
相关文章:
- 处理多个异常集合的C++方法
- 我在c++代码中生成了一个运行时#3异常
- 孤立代码块在结构中引发异常
- C++中的赋值发生,尽管右侧出现异常
- 访问被拒绝后,c++中的故障保护代码
- 从构造函数抛出异常时如何克服内存泄漏
- 异常属于C++中的线程还是进程
- 当类定义不可见时捕获异常
- 引发异常:读取访问冲突**dynamicArray**为0x1118235.发生
- 为什么异常不退出程序?
- 为什么我应该在异常处理中使用std::cerr而不是std::cout
- IpOpt拒绝解决不受约束的问题
- Termux权限被拒绝
- 如何修复链表类实现的未处理异常0xDDDDDDDD
- 关于:C++中异常对象的范围:为什么我没有得到副本?
- 是什么导致了Unity 3D中的"错误线程异常"?
- 如何将strftime中的格式错误作为异常捕获
- 创建具有 new in 函数和"this is nullptr"异常的对象
- mysql c ++连接器异常:用户"root"@'localhost'的访问被拒绝(使用密码:NO)&&MySQL服务器已消失
- InvokeHelper()抛出访问被拒绝异常