c ++ - WriteFile til Parallel port hænger

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg skriver en ActiveX-kontrol, der vil få adgang til parallelporten og skrive bytes til den. Jeg er i stand til at åbne porten succesfuldt, men når jeg skriver det hænger på WriteFile-funktionen. Har jeg savnet noget her? Jeg bruger Windows 7


HANDLE portHwd = CreateFile( \_T("\\.\LPT1" ), 
                        GENERIC\_WRITE,
                        0,
                        NULL,
                        OPEN\_EXISTING,
                        0,
                        NULL); 
      if (portHwd)
      {
          char outBuffer[] = \_T("This is a test
");
          int sz\_buffer = strlen(outBuffer);

            DWORD bytes\_written;
            if (!WriteFile( portHwd,
                  outBuffer,  
                  sz\_buffer , 
                  &bytes\_written, 
                  NULL))
            {
                  CloseHandle(portHwd);
                  GetLastError();
                  return 1;
            }

            CloseHandle(portHwd);
      }

Bedste reference


Hvis portens outputbuffer er fuld, vil WriteFile hænge, ​​indtil der er plads til at fuldføre din anmodning. Er der noget, der er knyttet til porten og læsning fra det?