OpenEvent GetLastError看看啥问题,。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 GetLastError()=5ACCESS_DENIED ! 参考这个朋友说的:http://topic.csdn.net/t/20040331/10/2907426.html在服务程序中CreateEvent,当LPSECURITY_ATTRIBUTES这个参数传NULL的时候,将使用默认访问控制。 服务程序中的默认控制就是不允许桌面程序访问这些对象,所以服务中打开的Event,桌面无法打开,GetLastError()的值为5(ERROR_ACCESS_DENIED) 返回访问拒绝服务中创建的内核对象要想在普通应用程序中使用,必须指定安全描述符。这是delphi的写的测试代码:在Service中... SecurityAttribute.nLength:= sizeof(SecurityAttribute); SecurityAttribute.lpSecurityDescriptor := @SecurityDescriptor; SecurityAttribute.bInheritHandle := TRUE; InitializeSecurityDescriptor(@SecurityDescriptor,1); SetSecurityDescriptorDacl(@SecurityDescriptor,TRUE,Nil,FALSE); hEvent := CreateEvent( @SecurityAttribute, // default security attributes true, // manual-reset event False, // initial state is signaled 'myTestEvent' // object name ); ....在应用程序中,则这样写 hEvent := CreateEvent( nil, // default security attributes true, // manual-reset event False, // initial state is signaled 'Global\myTestEvent' // object name ); ... 当然在应用层,使用OpenEvent也可以 hEvent := OpenEvent( EVENT_MODIFY_STATE, True, 'Global\myTestEvent' );... Static Text 画图,输出文字 全局鼠标钩子! 在Dll中是不是不可能放入ActiveX控件? 高分奉上图像处理的专家:图像边缘检测后,怎样把无关背景切割去掉? 请教:如何用 SAFEARRAY 创建多维安全数组?? 请问如何用STL实现一颗二叉树呢? 拿到了进程的ProcessID和Handle,能取到这个进程的主窗口吗?请教!! 在MFC中进行多文档的程序设计啊,应该怎样设置才可以让MFC程序窗口打开时无文档窗口啊? 找工作,在上海,欢迎大家来坐坐,给分 快来看!简单问题! 有关文档/视图的问题求教? 在双击标题栏和点击最大化窗口按钮最大化窗口时窗口重绘机制不同?
http://topic.csdn.net/t/20040331/10/2907426.html在服务程序中CreateEvent,当LPSECURITY_ATTRIBUTES这个参数传NULL的时候,将使用默认访问控制。
服务程序中的默认控制就是不允许桌面程序访问这些对象,所以服务中打开的Event,桌面无法打开,GetLastError()的值为5(ERROR_ACCESS_DENIED) 返回访问拒绝服务中创建的内核对象要想在普通应用程序中使用,必须指定安全描述符。这是delphi的写的测试代码:在Service中...
SecurityAttribute.nLength:= sizeof(SecurityAttribute);
SecurityAttribute.lpSecurityDescriptor := @SecurityDescriptor;
SecurityAttribute.bInheritHandle := TRUE;
InitializeSecurityDescriptor(@SecurityDescriptor,1);
SetSecurityDescriptorDacl(@SecurityDescriptor,TRUE,Nil,FALSE); hEvent := CreateEvent(
@SecurityAttribute, // default security attributes
true, // manual-reset event
False, // initial state is signaled
'myTestEvent' // object name
);
....在应用程序中,则这样写
hEvent := CreateEvent(
nil, // default security attributes
true, // manual-reset event
False, // initial state is signaled
'Global\myTestEvent' // object name
);
...
EVENT_MODIFY_STATE,
True,
'Global\myTestEvent'
);...