Everyone SECURITY_ATTRIBUTES

这周遇到这样一个问题: 在win7下, 一个管理员权限的程序创建的named pipe, 不能被另外一个普通运行的程序使用CreateFile去连接。GetLastError发现是ERROR_ACCESS_DENIED.

网上找来的代码, 创建出来的权限就是每一个人都可以访问的权限:

 

SECURITY_ATTRIBUTES sa;
SECURITY_DESCRIPTOR sd;

InitializeSecurityDescriptor(&sd,SECURITY_DESCRIPTOR_REVISION);
SetSecurityDescriptorDacl(&sd,TRUE,NULL,FALSE);

sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.bInheritHandle = TRUE;
sa.lpSecurityDescriptor = &sd;
posted @ 2012-05-26 11:03  yanjielong  阅读(409)  评论(0)    收藏  举报