Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TDCB


balepa ©   (2007-01-22 07:52:00) 

Есть код на C++

  Com.Parametr.fBinary = 1;
   Com.Parametr.fParity = false;       //None
   Com.Parametr.fOutxCtsFlow = false;      // CTS output flow control
   Com.Parametr.fOutxDsrFlow = false;      // DSR output flow control
   Com.Parametr.fDtrControl = 1;//DTR_CONTROL_DISABLE;       // DTR flow control type
   Com.Parametr.fDsrSensitivity = false;   // DSR sensitivity
   Com.Parametr.fTXContinueOnXoff = false; // XOFF continues Tx
   Com.Parametr.fOutX = false;
   Com.Parametr.fInX = false;
   Com.Parametr.fErrorChar = false;
   Com.Parametr.fNull = false;
   Com.Parametr.fRtsControl = 3;       // RTS flow control
   Com.Parametr.fAbortOnError = 1;     // abort reads/writes on error
   Com.Parametr.fDummy2 = false;  


В Delphi есть в TDCB, поле flags:Longint как выставить такие же параметры (см. выше)


MBo   (2007-01-23 08:41:00) [1]

dcb_RTSControl       = $00003000
каждая 16-ричная цифра - 4 бита, так что
shl 12


balepa   (2007-01-23 08:30:00) [2]

Param or (3 shl сколькотамнужно)
А сколькотамнужно?
Извеняюсь за непонимание


balepa   (2007-01-23 05:18:00) [3]


> MBo ©   (22.01.07 08:41) [3]


Сенкс


MBo   (2007-01-22 08:41:00) [4]

RTSControl занимает два бита,
3 = RTS_CONTROL_TOGGLE
Param or (3 shl сколькотамнужно)


balepa   (2007-01-22 08:29:00) [5]

Спасибо Mbo
что с помощью битовой логики я понял,

Не понял вот это
Com.Parametr.fRtsControl = 3;       // RTS flow control


MBo   (2007-01-22 08:23:00) [6]

с помощью битовой логики - or, and, shl

в помощь - маски полей:

dcb_Binary           = $00000001;
 dcb_Parity           = $00000002;
 dcb_OutxCTSFlow      = $00000004;
 dcb_OutxDSRFlow      = $00000008;
 dcb_DTRControl       = $00000030;
 dcb_DSRSensivity     = $00000040;
 dcb_TxContinueOnXoff = $00000080;
 dcb_OutX             = $00000100;
 dcb_InX              = $00000200;
 dcb_ErrorChar        = $00000400;
 dcb_Null             = $00000800;
 dcb_RTSControl       = $00003000;
 dcb_AbortOnError     = $00004000;


Наверх

Титульная страница Поиск, карта сайта Написать письмо