Работа с Com-портом

  • Автор темы Автор темы mike2007
  • Дата начала Дата начала
M

mike2007

Здравствуйте!
У меня такая проблемка, не могу отправить в COM-порт и считать символы с него. Можете дать ссылочку на информацию по работе с COM-портом.
Вот програмка:
Код:
int SendCom(void)
{
HANDLE ComHandle;
COMMCONFIG ComCfg, *lpComCfg=NULL;
COMSTAT *lpComStat=NULL;
//COMMTIMEOUTS ComTimeout, *lpComTimeout;
//DCB ComDcb, *lpComDcb;
//OVERLAPPED *lpOverlapped;
DWORD ComError;
DWORD lpSize;
DWORD nByteToWr=0, nByteOfWritten=0;


BOOL err;

char wBuff[5]={1,2,9,8,7};//, *lpBuff;
char rBuff[5]={0,0,0,0,0};

//lpBuff = Buff;

ComHandle = CreateFile(
"COM2",
GENERIC_READ || GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL || FILE_FLAG_OVERLAPPED,
NULL
);
if (ComHandle == INVALID_HANDLE_VALUE)
{
return 1;
}
lpComCfg = (COMMCONFIG *) malloc(sizeof(COMMCONFIG));

GetCommConfig(ComHandle,lpComCfg, &lpSize);

ComCfg = *lpComCfg;

ComCfg.wVersion = 1;
ComCfg.dwProviderSubType = PST_RS232;
ComCfg.dcb.BaudRate = 9600;
ComCfg.dcb.ByteSize = 8;
ComCfg.dcb.DCBlength = 28;
ComCfg.dcb.Parity = 0;
ComCfg.dcb.StopBits = 0;

SetCommConfig(ComHandle, &ComCfg, sizeof(COMMCONFIG));

lpComStat = (COMSTAT *) malloc(sizeof(COMSTAT));
ClearCommError(ComHandle, &ComError, lpComStat);

nByteToWr = 3;
err = WriteFile(ComHandle, &wBuff, nByteToWr, &nByteOfWritten, NULL);
ErrorR();
//*********************************************
// Вот здесь выводится ошибка "Отказано в доступе"
//*********************************************
nByteOfWritten = 0;

ClearCommError(ComHandle, &ComError, lpComStat);

nByteToWr = 3;
ReadFile(ComHandle, &rBuff, nByteToWr, &nByteOfWritten, NULL);
nByteOfWritten = 0;

CloseHandle(ComHandle);
return 0;
}
Помогите пожалуйста, заранее спасибо.
 
Пользуйся

Вот второй
 

Вложения

запись/чтение файла с именем COM*, где * - номер порта
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab