|
・FM-7から送って来たデータを別スレッドで受信するための前段関数
コードは公開しますが説明はできませんし内容に間違いがある可能性も ありますので責任も負えません。マルチスレッドにする時は「MFC」で 定石的なコード・マクロと考えてます。利用する際はクラスウィザード を使ってコントロール、メッセージハンドラーを用意しコードをコピペ して下さい。なお、使用時に発生する一切の不具合に対し免責をお願い します、その上でお使い下さい。なお間違いがあった時のご指摘は歓迎 します。その際は宜しく、ご指導お願いします。 <MainFrm.cppMainFrm.cpp> static DCB dcb; static BOOL fSuccess; static char* getbuf_ptr; static HANDLE hCommPort; FM2PC_TRNS* thread_id; void CMainFrame::OnDataTRNS_FM2PC() { // TODO: ここにコマンド ハンドラー コードを追加します。 // 受信処理のスレッドの生成 CRuntimeClass* pRuntime = RUNTIME_CLASS(FM2PC_TRNS); thread_id = (FM2PC_TRNS*)pRuntime->CreateObject(); // 別スレッドに情報を受け渡す thread_id->hCommPort = hCommPort; thread_id->exec_flg = 1; thread_id->getbuf_data = getbuf_ptr; // 受信処理のスレッドの呼出(ウィンドウの生成) thread_id->CreateThread(0, 0, NULL); } なお、派生クラスにあるメンバー変数: getbuf_data は I/O 処理が間に合わなった時に備えましたが現状では使ってません。 使う時はgetbuf_ptrのメモリの確保と破棄をコンストラタ、 デストラタで行って下さい。また hCommPort はコンストラタで FTDIのサンプルコードを参照して CreateFileA を使って取得 してください。更には下はデストラタで行って下さい。 CloseHandle(hCommPort); ではまた。 |

>
- コンピュータとインターネット
>
- コンピュータ
>
- ソフトウェア





