Я действительно некоторое время боролся с именованными каналами VB6.Эта строка в значительной степени работает:
CallNamedPipe(szPipeName, Header(0), 2, bArray(0), numBytes, cbRead, 30000)
Канал-сервер получает записанные 2 байта.Однако эта функция не то, что я хочу использовать.Мне нужно использовать комбинацию CreateFile () + WriteFile ().Теперь я не могу заставить это работать:
pipeHandle = CreateFile(szPipeName, GENERIC_READ Or GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0&)
Возвращает -1, что означает сбой.Ничего другого не изменилось, поэтому я не понимаю, почему это не удается.Затем я попробовал его на существующем файле C: \ test.txt:
pipeHandle = CreateFile("C:\\test.txt", GENERIC_READ Or GENERIC_WRITE, 0, 0, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0&)
Он все еще не удался и вернул -1.
Я неправильно использую CreateFile ()?