USB COMポートが切断された問題を備えたコンポートライブラリが修正されました。ソリューションは完璧ではなく、特に非常に遅いトランスミッション速度(300〜600ボー)の場合、無限のwaitforsingleobjectでアプリケーションを停止することは可能ですが、以前よりもはるかに優れています。 USB comポート切断エラーが発生すると、ハンドラーonaftercloseが実行され、例外「ポート切断」(tcomexception = ce_portdisconeded)が生成されます。
Comport Libraryには、COMポートにアクセスするコードが含まれています。もともと、COMポートは、IBM-PC互換性のあるコンピューターのシリアルポートインターフェイスの名前でした。現在、COMポートはUSBアクセスに有利な通信にとってそれほど重要ではありませんが、特にメーカーボードの単純な通信プロトコルとして、仮想ポートとしてまだ使用されています。
このライブラリは、元のComport Library 4.10のフォークであり、https://sourceforge.net/projects/comport/で見つけることができます。
フォークであるため、元のコミットメッセージの一部はまだアクセスできます。
マスターブランチはDelphiに焦点を当てており、すべてのcbuilderサポートが削除されました。ただし、古いcbuilderコードは、レガシービルダーサプロートブランチでまだアクセスできます
Delphi: 7、2005、2006、2007、2010、XE、XE2、XE3、XE4、XE5、XE6、XE7、XE8、RS10、RS10.1、RS10.2、RS10.3
元の著者: Dejan Crnila 1998-2002([email protected])
元メンテナー: Lars Dybdahl([email protected])、Paul Doland([email protected])、Brian Gochnauer([email protected])
| Delphiバージョン | ランタイム | デザイン時間 | 州 |
|---|---|---|---|
| Delphi 7 | 。 packages d7 cportlib7.dpk | 。 packages d7 dsgncport7.dpk | 十分にテストされていません |
| デルファイ8 | 。 packages d8 cportlib8.dpk | 。 packages d8 dsgncport8.dpk | 十分にテストされていません |
| Delphi 2005 | 。 packages d2005 cportlib2005.dpk | 。 packages d2005 dsgncport2005.dpk | 十分にテストされていません |
| Delphi 2006 | 。 packages d2006 cportlib2006.dpk | 。 packages d2006 dsgncport2006.dpk | 十分にテストされていません |
| Delphi 2007 | 。 packages d2007 cport_r.dpk | 。 packages d2007 cport_d.dpk | 十分にテストされていません |
| Delphi 2009 | 。 packages d2009 cport_r.dpk | 。 packages d2009 cport_d.dpk | 十分にテストされていません |
| Delphi 2010 | 。 packages d2010 cport_r.dpk | 。 packages d2010 cport_d.dpk | 動作するはずです |
| Delphi XE | 。 packages xe cport_r.dpk | 。 packages xe cport_d.dpk | 動作するはずです |
| Delphi XE2 | 。 packages xe2 cport_r.dpk | 。 packages xe2 cport_d.dpk | テスト |
| Delphi XE3 | 。 packages xe3 cport_r.dpk | 。 packages xe3 cport_d.dpk | 動作するはずです |
| Delphi XE4 | 。 packages xe4 cport_r.dpk | 。 packages xe4.dpk | 動作するはずです |
| Delphi XE5 | 。 packages xe5 cport_r.dpk | 。 packages xe5 cport_d.dpk | 動作するはずです |
| Delphi XE6 | 。 packages xe6 cport_r.dpk | 。 packages xe6 cport_d.dpk | 動作するはずです |
| Delphi XE7 | 。 packages xe7 cport_r.dpk | 。 packages xe7 cport_d.dpk | テスト |
| Delphi XE8 | 。 packages xe8 cport_r.dpk | 。 packages xe8 cport_d.dpk | 動作するはずです |
| Delphi Rs 10 | 。 packages 10s cport_r.dpk | 。 packages 10s cport_d.dpk | 動作するはずです |
| Delphi Rs 10.1 | 。 packages 101b cport_r.dpk | 。 packages 101b cport_d.dpk | 動作するはずです |
| Delphi Rs 10.2 | 。 packages 102t cport_r.dpk | 。 packages 102t cport_d.dpk | テスト |
| Delphi Rs 10.3 | 。 packages 103r cport_r.dpk | 。 packages 103r cport_d.dpk | 動作するはずです |
以前にインストールされたすべてのファイルをCOMPORTライブラリ(TCOMPORTコンポーネント)を削除します。 Delphiディレクトリの下に新しいフォルダーを作成し、ソースzipファイルを新しいフォルダーに抽出します。ライブラリパスに新しいコンポートフォルダー(ツール環境オプション - ライブラリライブラリパス)を追加します。
他のすべてのDelphiバージョンについては、以下の手順を使用してください。 Delphiの唯一の性格ではなく、Delphiの「すべての人格」モードでDelphi 2006を実行しながらCportを設置することをお勧めします。これにより、Cportがデュアルモードがインストールされるようにするのに役立ちます。
Delphi IDEの「ファイル/開く」メニュー項目を使用して、実行時のパッケージソースファイルをコンポートします(上記を参照)。 [パッケージ]ウィンドウの[コンパイル]ボタンをクリックして、ライブラリをコンパイルします。次に、実行時のパッケージライブラリファイルまたはファイル(上記を参照)をコンポートフォルダーから、検索パス(Windows System32など)からアクセスできるフォルダーに移動します。
これで、設計時間パッケージをインストールする必要があります。ファイル/開くメニュー項目を使用して、設計時間パッケージソースファイルを開きます(上記を参照)。 [パッケージ]ウィンドウの[コンパイル]ボタンをクリックしてパッケージをコンパイルし、[インストール]ボタンをIDEに登録します。コンポーネントコンポーネントは、コンポーネントパレットの「cportlib」ページに表示されます。ライブラリが見つからないためにインストールできないと不平を言うと、おそらく実行時間パッケージを検索パスに入れなかったでしょう。次回Delphiを開始しようとするまで、このエラーが発生しない場合があります。
注:Delphi IDEの下にパッケージを保存しないでください。
comexample.dpr-いくつかの基本的な送信償却機能を表示します
modtest.dpr-モデムテストコンソールアプリケーション
miniterm.dpr-単純な端末アプリケーション
CPORTMONITOR.PAS -TCPORTMONITORコンポーネント着信データと発信データを監視するため。この例は、TCustomComportコンポーネントにリンクする方法を示しています。著者:Roelof Y. Ensing(電子メール:[email protected])。
barcodescanner.pas -tbarcodescannerコンポーネント。シンプルなTCustomComportの子孫の例。
Delphiで、ヘルプメニューにアクセスして、アイテムをカスタマイズします。タブ付きノートブック、「Contents」タブを選択したものを提示する必要があります。 [ファイルの追加]ボタンをクリックします。 cportディレクトリを閲覧します。 cport.tocを選択します。
[インデックス]タブをクリックします。 [ファイルの追加]をクリックします。 cport.hlpを選択します。 [リンク]タブをクリックします。 [ファイルの追加]をクリックします。 cport.hlpを選択します。 [ファイル]メニュー/[プロジェクトアイテムの保存]を選択します。終了プログラム。 BorlandのOpenHelpユーティリティは、プログラムを閉じて変更を忘れることを忘れても促されないため、自分でそうすることを忘れないでください。
1.)Delphi IdeのOnrxbufイベントハンドラーの問題
If user double clicks on OnRxBuf event in Delphi IDE, message pops up
saying: "Property and Method ComPort1RxBuf are not compatible".
This is a Delphi IDE bug, since it can't handle untyped parameters
like Buffer parameter of OnRxBuf event.
Solution: Application has to assign OnRxBuf handler manually in code.
2.)Delphi 2005または2006の統合ヘルプはありません。
Solution: Manually open .HLP file with Windows Help.