[英]Creating C++ Named Pipes for Intranet hosts
我一直在嘗試使用Microsoft代碼創建命名管道:
http://code.msdn.microsoft.com/windowsdesktop/CppNamedPipeClient-a88eb958
我還從其他地方獲取了安全令牌:
SECURITY_ATTRIBUTES sa;
sa.lpSecurityDescriptor = (PSECURITY_DESCRIPTOR)malloc(
SECURITY_DESCRIPTOR_MIN_LENGTH);
InitializeSecurityDescriptor(sa.lpSecurityDescriptor,
SECURITY_DESCRIPTOR_REVISION);
// ACL is set as NULL in order to allow all access to the object.
SetSecurityDescriptorDacl(sa.lpSecurityDescriptor, TRUE, NULL, FALSE);
sa.nLength = sizeof(sa);
sa.bInheritHandle = TRUE;
我想在我的ip上聲明服務器而不是本地服務器,以使其由Intranet上的其他PC進行訪問:
#define SERVER_NAME L"10.12.13.122" ("." works)
#define PIPE_NAME L"SamplePipe"
#define FULL_PIPE_NAME L"\\\\" SERVER_NAME L"\\pipe\\" PIPE_NAME
之前有人針對C ++聲明過嗎? 這是拒絕創建命名管道...
0x7B是ERROR_INVALID__NAME。 “管道服務器無法在另一台計算機上創建管道,因此CreateNamedPipe必須使用句點作為服務器名稱,如以下示例\\\\。\\ pipe \\ PipeName中所示”:請參見MSDN 。 不要忘記將字符串文字的反斜杠加倍。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.