Привет Я новичок в MSMQ,Нелегальная имя Путь при создании MessageQueue
имеет некоторые C++ компоненты, которые я хочу, чтобы соединить их с помощью очереди сообщений Microsoft. Использование функции от https://msdn.microsoft.com/en-us/library/ms711416(v=vs.85).aspx. Я хочу создать новую очередь сообщений.
Эта функция я вызываю с:
SECURITY_DESCRIPTOR securityDescriptor;
CreateSecurityDescriptor(&securityDescriptor);
WCHAR wszOutFormatName[256];
DWORD dwOutFormatNameLength;
CreateMSMQQueue(L"DIRECT=OS:.\\PRIVATE$\\MyQueue", &securityDescriptor, wszOutFormatName, &dwOutFormatNameLength);
CreateSecurityDescriptor
создает как имя говорит по умолчанию SecurityDescriptor. При необходимости я могу отправить код.
Но создание не выполнено с кодом ошибки MQ_ERROR_ILLEGAL_QUEUE_PATHNAME
. Что означает:
PROPID_Q_PATHNAME содержит недопустимую строку имени пути очереди сообщений.
Что не так с L"DIRECT=OS:.\\PRIVATE$\\MyQueue"
? Я получил от https://msdn.microsoft.com/en-us/library/ms700996(v=vs.85).aspx
Я благодарен за любую помощь.
Только предположение, но пример из MSDN так же, как ваша, кроме него есть один обратный слэш, где у вас есть пара из них. Поэтому попробуйте L "DIRECT = OS:. \ PRIVATE $ \ MyQueue" – Marichyasana
@Marichyasana Я тоже это пробовал. Но у меня такое же сообщение об ошибке. –