問題タブ [mscomm32]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vba - Windows 7 64 ビット上の Microsoft Access 2010、および MSCOMM32.ocx
週末に、会社の POS およびデータベース コンピューターのハード ドライブに障害が発生しました。USB 経由で接続された Orbit Metrologic スキャナがあり、通信ポート COM3 用にエミュレートされています。スキャナーは動作し、スキャナーが Access 2010 と通信できないことを除けば、データベースを完全に復元できました。以前は 32 ビット バージョンの Access を実行していましたが、今回は 64 ビット バージョンをダウンロードしました。 64ビットマシンを使用しているため、アクセスの可能性があります。
私がやったこと:
- MSCOMM32.ocx を Regsvr32 で SysWOW64 に登録しました (故障したハード ドライブと同じもので、Linux ライブ CD から起動して抽出できました)
- ADM.exeを使用してMSCOMM32.ocx Windows 7 Kill-Bitを無効にしました
- すべての ActiveX コントロールをトラスト センターで問題なく実行できるようにしました
- VBA リファレンスに MSCOMM32.ocx を登録しました。
MSCOMM32.ocx は 64 ビット環境で動作しますか? または、32 ビット アクセスに戻す必要がありますか?
c# - Windows 環境での SerialPort 設定の保存
C# プログラムでシリアル (COM) ポート設定 (ボー レート、ストップ ビットなど) をプログラムで設定したいのですが、次のようなことをすると、Windows 環境に設定が保存されません。私は完全に間違った道を進んでいますか?
mfc - Visual C++ での MSComm 経由の Modbus 入力
私はModbusプロトコルにまったく慣れていません。私のセットアップは、異なるアドレスを持つ 3 つのデバイスで構成されています。それらはすべて RS232 経由で COM1 に接続されています。Modbus Poll を使用して入力データを確認しましたが、正常に動作しています。私が今やりたいことは、vc++ (MFC) アプリケーションで保持レジスタを読み取ることです。シリアル通信には、MSComm クラスを使用します。少しコードを書きましたが、入力がまったく得られません。
現時点での私のコード:
今m_Inputを出したいのですが、ちょっと変わっていません。SetCommID を設定するときに警告 (Property is read-only) も表示されますが、これは重要ではないと思います。
現時点で私は本当に無知なので、誰かが私を案内してもらえますか。
よろしく
EDIT:通信例によると、デバイスをファイルのように扱おうとしました。
read length failed エラーが発生します。strASCII は通常は分離されていません。現在は概要を把握しやすいようになっています。Modbus Pollで通信を確認しました。私の出力は正しいですが、データを取得していないようです。
編集:わかりました。ご助力ありがとうございます。間違ったチェックサムを入れていました。
vb6 - マイクロコントローラーとのインターフェイス時に vb6 で mscomm ポートを開閉する際の問題
コードは、シリアルポートを使用してマイクロコントローラーまたはシリアルデバイスからデータを取得するためのものであるため、ポートのオープンとデータの取得に問題があります。この問題は過去20日間発生しています。できるだけ早く助けてください:)
以下は、MScomm コントロール、テキスト ボックス、接続および切断用の 2 つのコマンド ボタンを含むインターフェイスのイメージです。
.net - Visual Basic 2010 Express での MSCOMM の追加と使用
[プロジェクト] -> [参照の追加] -> [Com] タブ -> [mycomm コントロール 6.0] をクリックして、mycomm.lib を Visual Basic に既に追加しています。しかし、私はまだそれを使用する方法を知りません。私が欲しいのは、キャラクターをビジュアルベーシックエクスプレス2010からマイクロコントローラーに送ることです。
vb6 - 可能であれば文字列として、または少なくとも整数としてデータを送信および受信したい
mscomm ポート経由でデータを送受信しようとしていますが、データ型の不一致を受信しています。このエラーを回避するにはどうすればよいですか。データを整数として送信し、可能であれば文字列として受信する必要があります。最小限、整数として取得する必要があります。データ・タイプ。以下は私のコードです。この問題を解決するのを手伝ってください。
送信コードと受信コードは、独立して実行すると機能します。
vb6 - vb6 の MSComm の RThreshold プロパティが正しく機能しない
COM ポート経由でデータを受け入れるコードを VB6 で記述しようとしています。現在、1 台の GSM 電話がデータを送信しています。データは、通話やメッセージを含むあらゆるものである可能性があります。通話とメッセージの形式を取得できます。
通話の場合:
メッセージの場合:
問題は、RThreshold
通話とメッセージのたびに値を変更する必要があることです。上記のようMSComm1.Rthreshold = 47
に、文字列全体を取得するための呼び出しやMSComm1.RThreshold = 70
小さなメッセージの場合と同様です。RThreshold が 47 未満または 47 より大きい呼び出しの場合、データはシフトし続けます。私が読んだスレッドが何であれ、イベントは1文字自体の受信時にトリガーされるため、1に等しくなければならないとMSComm1
言われていますが、私のコードでは発生していません。これが私のコードです:RThreshold
MSComm1.Oncom
の場合MSComm1.RThreshold = 1
、文字は受信されません。何が問題なのか誰か教えてください。
serial-port - ABAP から MSCOMM ActiveX コントロールを使用して、16 進文字列をシリアル ポートに送信します。
汎用モジュールを使用して、ABAP からシリアル ポートに接続されたデバイスに通信しています。これは MSCOMM ActiveX コントロールに基づいており、MSCOMM プロパティを使用して値を読み書きします。残念ながら、通信プロトコルのために 16 進文字列をデバイスに送信する必要があります。私にはそれができません。16 進値の文字列を送信しようとすると、シリアル ポートで 16 進値の ASCII 値が送信されます。
たとえば、シリアル ポートで次の 16 進数の値を送信したい: 01 24 56。ABAP で XSTRING を作成し、値が 012456 で問題ありませんが、シリアル ポートは次の 16 進数の値を受信します: 30 31 32 34 35 36 は、ABAP から送信された文字列のコンポーネントの変換された ASCII 値です。
たとえば、VisualBasic では、文字列を送信する前に 16 進数へのキャストを適用できることがわかりました。
サードパーティのソフトウェアを使用せずに、ABAP の MSCOMM に基づいて、この関数モジュールからシリアル ポート経由で 16 進文字列を送信できるかどうか教えてもらえますか?
よろしくお願いします、S.
excel - 大文字と小文字を区別する MSComm 文字列
コーディングの経験はありますが、VBA (Excel 2013) の経験はありません。シリアルポートを介して、1.) リモートデバイスに外部コマンド ("PHOTO") を受け入れるように指示し、2.) 外部コマンドを送信します ("M5" & Chr$(13) )、および 3.) 外部コマンド ("q") を受け入れないようにデバイスに指示します。
私の問題は、ステップ 2 と 3 が機能することを確認できますが、ステップ 1 が機能しないことです。Tera Term でデバイスと通信する場合、「PHOTO」コマンドはすべて大文字で送信する必要がありますが、「M5」および「q」コマンドは大文字と小文字を区別しません。MSComm21.Output コマンドは大文字と小文字を区別しないのでしょうか? これについて具体的に話しているものは見つかりませんでした。そうでない場合、私が見逃していることは明らかですか?
この「単純な」プログラムは私を狂気に駆り立てています。どんな助けでも大歓迎です。