Я подключил USB-принтер и пытаюсь открыть этот порт, используя метод Open
класса CFile
.Следующий код работает правильно в Windows XP, но не работает в Windows 7:
#include<stdio.h>
#include<afx.h>
void main()
{
CFile m_Port;
CString PortName = "\\\\?\\usb#vid_0b0b&pid_106e#sx0000000-tc0000#{28d78fad-5a12-11d1-ae5b-0000f803a8c2}";
int i;
i = m_Port.Open (PortName ,2,0);//PortName is DevicePath
if ( i > 0 )
printf("Done");
else
printf("Its not working");
i=GetLastError();
printf("\n\nError=%d",i);
}
В Windows XP он работает нормально, но в случае Windows 7 GetLastError
возвращает значение 3Как я могу исправить этот код для работы как в Windows XP, так и в Windows 7?Дайте мне знать, если в Windows 7 есть какой-либо другой GUID. Есть ли у них какой-либо другой вариант, чтобы открыть порт с помощью пути устройства в Windows 7?