2009-06-16 7 views
1

Код:ReadFile и WriteFile в win32 завершается с кодом ошибки 1

hHCDev = CreateFileA(completeDeviceName, 
         //"F:\\test.txt", 
         GENERIC_WRITE|GENERIC_READ, 
         FILE_SHARE_WRITE|FILE_SHARE_READ, 
         NULL, 
         OPEN_EXISTING, 
         0, 
         NULL); 



    if (hHCDev == INVALID_HANDLE_VALUE) 
     { 
       CloseHandle(hHCDev); 
     } 
    else 
     { 
      char bufRead[256] = {0}; 
      DWORD countRead = 0; 
      BOOL result ; 

      result = ReadFile(hHCDev, bufRead, 5, &countRead, NULL) ; 
      if(!result) 
      { 
       printf("Reading file error %d\n", GetLastError()); 
      } 


      char bufWrite[] = {'7', '8', '9', ' '}; 
      DWORD countWritten = 0; 


      result = WriteFile(hHCDev, bufWrite, 3, &countWritten, NULL) ; 
      if(!result) 
      { 
       printf("Writing file error %d\n", GetLastError()); 
      } 
      else 
       { 
        printf("sucess"); 
       } 
      CloseHandle(hHCDev); 
     } 
     memset(completeDeviceName,0,256) ; 

Описание:

Мы попытались открыть устройство USB, подключенного через CreateFile(). Используя вызовы Readfile и Writefile(), мы пытались связаться с устройством. Но эти вызовы возвращаются с кодом ошибки 1. Какая может быть причина?

Ваша помощь будет высоко оценена.

С наилучшими пожеланиями Сурен

+0

какая версия Windows вы используете? – devio

ответ

0

Попробуйте запустить приложение с правами администратора.