Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > как программа обращается к к различным портам комп


Автор: Partizanishe 30.9.2011, 12:59
Здравствуйте!)Вопрос новичка.Как программы в Windows обращаются к различным портам компьютера.Ну например как программа обращается к COM-порту или USB.Для этого нужны специальные бибилиотеки?И как это реализуется с попощью языка C++(напишите пожалуйста самый простой пример)?)))

Автор: alexSl 30.9.2011, 15:59
Код

...
HANDLE hDevice = INVALID_HANDLE_VALUE;  // handle to the drive to be examined 
BOOL bErrorFlag = FALSE;
  hDevice = CreateFileW(wszPath,          // drive to open
                        0,                // no access to the drive
                        FILE_SHARE_READ | // share mode
                        FILE_SHARE_WRITE, 
                        NULL,             // default security attributes
                        OPEN_EXISTING,    // disposition
                        0,                // file attributes
                        NULL);            // do not copy file attributes

...
bErrorFlag = WriteFile( 
                    hFile,           // open file handle
                    DataBuffer,      // start of data to write
                    dwBytesToWrite,  // number of bytes to write
                    &dwBytesWritten, // number of bytes that were written
                    NULL);            // no overlapped structure
...


Открывает файл устройства и пишет в него.

Автор: Partizanishe 30.9.2011, 16:09
Цитата(alexSl @ 30.9.2011,  15:59)
Код

...
HANDLE hDevice = INVALID_HANDLE_VALUE;  // handle to the drive to be examined 
BOOL bErrorFlag = FALSE;
  hDevice = CreateFileW(wszPath,          // drive to open
                        0,                // no access to the drive
                        FILE_SHARE_READ | // share mode
                        FILE_SHARE_WRITE, 
                        NULL,             // default security attributes
                        OPEN_EXISTING,    // disposition
                        0,                // file attributes
                        NULL);            // do not copy file attributes

...
bErrorFlag = WriteFile( 
                    hFile,           // open file handle
                    DataBuffer,      // start of data to write
                    dwBytesToWrite,  // number of bytes to write
                    &dwBytesWritten, // number of bytes that were written
                    NULL);            // no overlapped structure
...


Открывает файл устройства и пишет в него.

а по подробнее можно?)

Автор: alexSl 30.9.2011, 19:43
http://pcports.ru/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)