Udostępnij za pośrednictwem


Dojścia zasobów komunikacji

Proces używa funkcji CreateFile, aby otworzyć dojście do zasobu komunikacji. Na przykład określenie COM1 powoduje otwarcie dojścia do portu szeregowego, a LPT1 otwiera dojście do portu równoległego. Jeśli określony zasób jest obecnie używany przez inny proces, metoda CreateFile zakończy się niepowodzeniem. Każdy wątek procesu może użyć dojścia zwróconego przez CreateFile, aby zidentyfikować zasób w dowolnej funkcji, która uzyskuje dostęp do zasobu.

Gdy proces wywołuje CreateFile, aby otworzyć zasób komunikacji, określa następujące atrybuty:

  • Jaki typ dostępu do odczytu/zapisu istnieje dla określonego zasobu.
  • Czy uchwyt może być dziedziczony przez procesy podrzędne.
  • Czy uchwyt może być używany w nakładających się (asynchronicznych) operacjach we/wy. (Aby uzyskać opis nakładających się operacji, zobacz Synchronization.)

Gdy proces używa CreateFile do otwierania zasobu komunikacji, musi określić pewne wartości dla następujących parametrów:

  • Parametr fdwShareMode musi mieć wartość zero, otwierając zasób w celu uzyskania wyłącznego dostępu.
  • Parametr fdwCreate musi określać flagę OPEN_EXISTING.
  • Parametr hTemplateFile musi być null.

W przypadku używania CreateFile do otwierania uchwytu bezpośrednio na urządzeniu aplikacja musi użyć znaków specjalnych " \\ .\", aby zidentyfikować urządzenie. Aby na przykład otworzyć dojście do dysku A, określ \\ .\a: dla parametru lpszNameCreateFile. Proces wywołujący może używać dojścia w funkcji DeviceIoControl do wysyłania kodów sterujących do urządzenia.