線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2418
推到 Plurk!
推到 Facebook!

RS232與元件安裝

答題得分者是:jazz
frederick
中階會員


發表:101
回覆:108
積分:66
註冊:2002-08-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-10-31 19:41:23 IP:139.175.xxx.xxx 未訂閱
請教大家關於元件安裝的問題: 最近在安裝元件時, 我是裝文魁出版的C Builder與RS232上的控制元件, 另外又安裝了spcomm這個元件,但是安裝後會被蓋掉。 於是移除spcomm後,只剩書上那控制元件, 但元件上的屬性卻莫名其妙的比原本增加了幾個, 如原本只有InputLen,但移除spcomm後卻有Input這屬性 !@#@!#$ what's wrong? 是否能請問一下如果要完全移除所安裝的元件要如何做呢? 我是在component->install component下以into existing package安裝的。 或者安裝方法不對? 請問有用過spcomm的網友,它會不會很難用阿,因為看屬性好多, 是不是只設定用到的屬性,沒用到不用理它呢? 或者有比較好用的免費元件? 我目的只做些簡單控制,如: 1. 傳出連續的byte 2. PC端一有收到訊息,要能馬上有此事件,如RThreshold之類的屬性設定
jazz
初階會員


發表:10
回覆:43
積分:35
註冊:2002-06-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-11-12 23:23:17 IP:61.30.xxx.xxx 未訂閱
我有安裝文魁的那個TComm元件 結果也是跟我原本的RS232元件會互相衝突 因為兩個同時都註冊為TComm 所以我就將文魁的元件稍微改一下名字就沒有問題了 但是我試過安裝Component時 選into existing package 雖然可以正常安裝,但是安裝完在設計時,要砍掉此元件 會發生vcl50.bpl的錯誤 所以我改以into new package的方式安裝就沒有事了 還有,他的元件在TBaudRate屬性裡,還是有一些不夠完美 我有作一些修改如下 .cpp file 增加的地方 DWORD CommBaudRates[] = { CBR_110,CBR_300 , CBR_600 , CBR_1200 , CBR_2400 , CBR_4800 , CBR_9600 , CBR_14400, CBR_19200, CBR_38400, CBR_56000, CBR_57600, CBR_115200, CBR_128000,CBR_256000 } ; void TCommA::_SetCommState(void) { DCB dcb; DWORD tmpValue; //取得串列埠設定 GetCommState( hComm, &dcb ); //變更傳輸速率 //dcb.BaudRate = FBaudRate; dcb.BaudRate = CommBaudRates[FBaudRate]; // 變更的地方 dcb.fBinary = 1; //必須指定為1 dcb.Parity = (unsigned char)FParity ;//Parity的指定 FParityCheck=false; if (FParity!=0) FParityCheck=true; if (FParityCheck) dcb.fParity = (unsigned long)dcb_ParityCheck; // Enable parity check // 設定硬體流量管制 switch (FHwHandShaking){ case hhNone: dcb.fRtsControl=0; break; case hhNoneRTSON: dcb.fRtsControl = RTS_CONTROL_ENABLE; //dcb_RtsControlEnable; break; case hhRTSCTS: dcb.fRtsControl = RTS_CONTROL_HANDSHAKE;//dcb_RtsControlHandShake; dcb.fOutxCtsFlow = 1; //dcb_OutxCtsFlow; break; } //設定軟體流量管制 if (FSwHandShaking!=shNone) { dcb.fOutX = 1; //dcb_OutX; dcb.fInX = 1; //dcb_InX; } //設定資料位元數 dcb.ByteSize = FDataBits 5; //設定停止位元數 dcb.StopBits = FStopBits ; //將設定寫入 SetCommState( hComm, &dcb ); } .h file //型態定義 enum TBaudRate { br110, br300, br600, br1200, br2400, br4800, br9600, br14400, br19200, br38400, br56000, br57600, br115200, br128000, br256000}; PS:.dcr也要一併修改喔
frederick
中階會員


發表:101
回覆:108
積分:66
註冊:2002-08-01

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-11-17 21:42:13 IP:218.187.xxx.xxx 未訂閱
jazz您好: 您好厲害,還會修改元件, 我功力還不夠,尚不能瞭解。 不過還是感謝您的回覆。
系統時間:2024-03-28 19:31:20
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!