13

私は64ビットのWindows7マシンにcom0comv2.2.2.0をインストールしました。

次のようなコマンドユーティリティを実行します。

command> install PortName=COM9 PortName=COM8
       CNCA0 PortName=COM9
       CNCB0 PortName=COM8
ComDB: COM8 - logged as "in use"
ComDB: COM9 - logged as "in use"

command> busynames COM?*
COM3
COM4
COM5
COM6
COM8
COM9
COMPOSITEBATTERY

注:「使用中」としてログに記録されたのはエラーメッセージではありませんか?

それから私はこのようにCOM8を開こうとします

m_hIDComDev = CreateFileA( szCodedPort, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL );
if( m_hIDComDev == NULL  || m_hIDComDev == INVALID_HANDLE_VALUE ) {

    wchar_t * lpMsgBuf;
    DWORD dw = ::GetLastError(); 
    FormatMessage(
        FORMAT_MESSAGE_ALLOCATE_BUFFER | 
        FORMAT_MESSAGE_FROM_SYSTEM |
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        dw,
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
        (LPTSTR) &lpMsgBuf,
        0, NULL );

    myErrorMsg = (char*)malloc( 200 );
    sprintf(myErrorMsg,"Error creating connection %s ( %s ) %S",
        szPort,szCodedPort,lpMsgBuf);

これは失敗します

Error creating connection COM8 ( COM8 ) The system cannot find the file specified.

「COM8」と。の両方を試しまし"\\.\COM8"た。

CreateFileAへのまったく同じ呼び出しは、「実際の」COMポートで完全に機能することに注意してください。

Q:誰かが問題を教えてもらえますか?

A:Windows 7 64ビットでは、署名されていないドライバーのテストを有効にする必要があります。

  • 管理者としてコマンドプロンプトを実行します。(管理者権限を持つアカウントから実行するだけでは不十分です。これを行う方法の詳細については、ここを参照してください。)

  • コマンドを入力しますbcdedit -set TESTSIGNING ON

  • リブート。(Windowsは、デスクトップの右下に「テストモード」のメモを配置します)

Windows 8の場合、この方法は十分または簡単には機能しません。ここでは、問題と回避策について説明します。

あるいは、署名されたバージョンを試してみることもできます-私はこれを自分で試していません。

4

3 に答える 3

18

誰かがこれを参照していて、このトピックに興味がある場合、com0comの2.2.2.0バージョンは64ビットWindows用に署名されています。これにより、Windowsを「テスト」モードにするというフープを飛び越える必要がなくなります。

于 2013-01-08T11:43:29.883 に答える
9

これが私のポイントです:

  • Microsoftはである必要64-bit driversがありますsigned
  • com0com.sys(64ビット)は単なる符号なしカーネルモードドライバーです。

SoftWxは、64ビットのWindows7マシンにインストールするための興味深いチュートリアルを作成しました。ここで取得できます。

于 2012-01-09T04:40:20.807 に答える
0

これは非常に古い投稿ですが、私のように誰かがつまずいた場合に役立つ情報を追加するだけです。

Windows 10バージョン2004以降では、BIOSでセキュアブートを無効にする必要がある場合があります。

私はSourceForgeからアプリの署名付きバージョン3.0を入手しました。これは、私の1台のPC(Windows 10 Proバージョン2004)で完全に機能しました。アプリをインストールしたところ、リンクされたポートの2つのペアがすぐに作成されました。

私のラップトップ(Windows 10 Proバージョン20H2)では、同じ結果が得られませんでした。COMポートが作成されておらず、デバイスマネージャでデバイスを構成できませんでした。BIOS設定を変更した後、再インストールするとすべてがスムーズに進みました。

参照用のリンク:

https://sourceforge.net/projects/com0com/

https://sourceforge.net/projects/signed-drivers/files/com0com/v3.0/

上記の@DaAwesomePに回答するために(コメントに入れる担当者がいません)、GitHubhttps://github.com/paulakg4/com0comにchanges.txtを表示できるリポジトリがあります。日付を比較すると、同じバージョン3.0のように見えます。

于 2021-10-22T15:52:55.943 に答える