C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  Update World C++: Сборник GPL QT исходников
  Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Нетология

 94 - Функция BuildCommDCB() / Win 32 API / Win32 API

Шаг 94 - Функция BuildCommDCB()

Функция:

BOOL BuildCommDCB
(  
	LPCTSTR lpDef,	// строка инициализации
	LPDCB lpDCB	// структура инициализации
);

Эта функция очень удобна вот в каком плане. Она устанавливает параметры структуры DCB, которую потом можно передать в порт практически также как команда mode. Если кто помнит MS DOS и Нуль модемный кабель и связь между двумя компьютерами. Так вот подаем строку, в ответ получаем структуру DCB. Пример строки.

baud=1200 parity=N data=8 stop=1 

Пробуем ???

#include "stdafx.h"
#include "windows.h"
#include "iostream.h"

void main()
{
	DCB dcb;
	ZeroMemory(&dcb,sizeof(DCB));
	char buffer[100];
	strcpy(buffer,"baud=1200 parity=N data=8 stop=1");
	if (BuildCommDCB((char*)&buffer,&dcb))
	{
		if (dcb.BaudRate == CBR_1200) cout << "Yes " << endl;
	}
	else cout << " error config DCB";
}

В случае успешного завершения функция BuildCommDCB() возвращает не нулевое значение, иначе ноль. Эта функция заменяет только явные поля. За некоторыми исключениями.

Для строк вида 9600,n,8,1 (не заканчивающихся символами x или p):

· fInX, fOutX,fOutXDsrFlow, fOutXCtsFlow устанавливаются в FALSE 
· fDtrControl устанавливается в DTR_CONTROL_ENABLE 
· fRtsControl устанавливается в RTS_CONTROL_ENABLE 

Для строк вида 9600,n,8,1,x (заканчивающихся символом х):

· fInX, fOutX устанавливаются в TRUE 
· fOutXDsrFlow,fOutXCtsFlow устанавливаются в FALSE 
· fDtrControl устанавливается в DTR_CONTROL_ENABLE 
· fRtsControl устанавливается в RTS_CONTROL_ENABLE 

Для строк вида 9600,n,8,1,p (заканчивающихся символом p):

· fInX, fOutX устанавливаются в FALSE 
· fOutXDsrFlow,fOutXCtsFlow устанавливаются TRUE 
· fDtrControl устанавливается в DTR_CONTROL_HANDSHAKE 
· fRtsControl устанавливается в RTS_CONTROL_HANDSHAKE 

| |
Автор Каев Артем.
[AD]





Letyshops [lifetime]