博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

寻觅

笨笨的小窝
benbenxiaobai.cublog.cn


windows编程中的安全属性结构
安全属性结构,SECURITY_ATTRIBUTES。

    typedef struct _SECURITY_ATTRIBUTES { // sa
               DWORD nLength;
               LPVOID lpSecurityDescriptor;
               BOOL bInheritHandle;
    } SECURITY_ATTRIBUTES;
    nLength 是结构体的大小,自然是用sizeof取得了。lpSecurityDescriptor是安全描述符(一个C-Style的字 符串)。 bInheritHandle他指出了安全描述的对象能否被新创建的进程继承。先不要管他们的具体意义,可以参考:

    sa.nLength = sizeof(SECURITY_ATTRIBUTES);
    sa.lpSecurityDescriptor = NULL; //使用系统默认的安全描述符
    sa.bInheritHandle = TRUE; //一定要为TRUE,不然句柄不能被继承。


ps:
 (单指信号量来说)unix系统中我们熟悉的读写执行的权限:它低端的九个位是该信号量的权限,其作用相当于文件的访问权限。但它们可以与键值IPC_CREAT做按位的或操作以创建一个新的信号量。即使在设置了IPC_CREAT标志后给出的是一个现有的信号量的键字,也并不是一个错误。我们也可以通过IPC_CREATIPC_EXCL标志的联合使用确保自己将创建出一个新的独一无二的信号量来,如果该信号量已经存在,就会返回一个错误。

发表于: 2007-07-26 ,修改于: 2007-07-26 16:37,已浏览273次,有评论0条 推荐 投诉


网友评论

发表评论