配布先PCの拡張RS232Cを動作させるには

解決


Msun  2007-10-31 16:30:57  No: 28152  IP: 192.*.*.*

配布先PCでアプリは動くようになったのですが、このPCに装着した拡張RS232Cボードの動作が正常でありません。ポートのオープンは出来ているようなのですが、電文が送信されません。
念のためこのPCにDelphi2005をインストールして、配布したアプリをRUNさせると電文は送信されます。どうしたらDelphiなしで送信できるようになるかよろしくお願いします。

編集 削除
TS  2007-10-31 16:52:31  No: 28153  IP: 192.*.*.*

RS-232C通信は標準のコンポーネントは無いと思いますが
何で実装されてますか、DLLを使用しているとか。

編集 削除
Msun  2007-11-01 03:58:54  No: 28154  IP: 192.*.*.*

TSさん 早速のレスありがとうございます。
配布先PCは、ThinkCenter,拡張PCIはI-O DATAのRS−232Cです。
取付けるとポートのCOM3,COM4になります。COM1は正常に作動します。
CommXを使っています。
テストのためインストールしたDelphiを削除して、配布したアプリをRUNさせたところ、COM3,COM4とも送信OKです。何かが変わったようですが..?
TClientDataSetのとき、MadiasLibをuseに追加しましたが、RS232C用のxxxLibが在りそうな気がしますがそれがなにかわかりません。よろしくお願いします。

編集 削除
Msun  2007-11-01 07:05:38  No: 28155  IP: 192.*.*.*

誤記です。MadiasLib => MidasLib でした。

編集 削除
TS  2007-11-01 09:03:53  No: 28156  IP: 192.*.*.*

>CommXを使っています。
私はCommXを使った事がないので正確には分かりませんが
動作時に特別なファイルは不要だと思います。
何らかの原因でポートの指定がうまく行かなかったのではないか
位しか思い当たりません。

編集 削除
Msun  2007-11-03 06:29:44  No: 28157  IP: 192.*.*.*

TSさん  へ
>動作時に特別なファイルは不要だと思います。のヒントありがとうございました。この掲示板の過去ログを調べましたらズバリの投稿がありました。「おっ」さんからの情報です。
 PostThreadMessage(〜);
を,
 while not PostThreadMessage(〜) do Sleep(1);
とすると、送信されるようになった。
とありましたので、早速ソースを変更しました。

編集 削除