【发布时间】:2013-03-16 20:50:16
【问题描述】:
代码sn-p:
void RunThread(void* unused_args)
{
PSECURITY_DESCRIPTOR sdsc;
ULONG size;
ConvertStringSecurityDescriptorToSecurityDescriptor("S:(ML;;NW;;;LW)", SDDL_REVISION_1, &sdsc, &size);
SECURITY_ATTRIBUTES sa;
sa.nLength = sizeof(sa);
sa.bInheritHandle = false;
sa.lpSecurityDescriptor = sdsc;
HANDLE pipe = CreateNamedPipe("\\.\pipe\mmaivpc_test_pipe", PIPE_ACCESS_DUPLEX, PIPE_TYPE_BYTE, 255, 1024, 1024, 0, &sa);
DWORD error = GetLastError();
}
如果您还没有从函数名中弄清楚,这个函数将被_beginthread 调用。 GetLastError() 正在返回 ERROR_INVALID_NAME,我不知道为什么。
【问题讨论】:
-
你忽略了警告,对吧?大多数程序员的习惯做法,不知道为什么!
标签: multithreading winapi visual-c++ named-pipes