Я устранял проблему, когда CreateFile не мог открыть существующий именованный канал, когда обнаружил, что CreateFile () плохо работает с параметром filename.Мой код:
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileW" ( _
ByVal lpFileName As String, _
ByVal dwDesiredAccess As Long, _
ByVal dwShareMode As Long, _
ByVal lpSecurityAttributes As Long, _
ByVal dwCreationDisposition As Long, _
ByVal dwFlagsAndAttributes As Long, _
ByVal hTemplateFile As Long) As Long
pipeHandle = CreateFile("C:\\test.txt", GENERIC_READ Or GENERIC_WRITE, 0&, 0&, CREATE_ALWAYS, 0&, 0&)
Он не создает файл в C: \, вместо этого он создает файл в текущем рабочем каталоге VB с искаженным именем файла.Кажется, CreateFile не может распознать и проанализировать заданную строку имени файла.
Почему это происходит?Я использую VB6 на Windows 7 (использовал некоторые хитрости, чтобы установить его).Может ли это быть причиной проблемы?