問題タブ [wdf]

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.

0 投票する
0 に答える
394 参照

.net - Windows 7 にカーネル モード ドライバーをプログラムでインストールする方法

キーボード用の sys、inf、cat、coinstaller ファイルを含む署名済みドライバー パッケージがあります。Windows デバイス マネージャーのようなパッケージをインストールする必要があります。PnpUtil を試してみたところ、ドライバーをインストールしてドライバー ストアに配置しましたが、デバイス マネージャーには反映されませんでした。InstallHInfSection を試しましたが、何も起こりませんでした。デバイス マネージャーなどのドライバーをインストールする API はどれですか?

0 投票する
1 に答える
840 参照

windows - SetupCopyOemINF プレインストールが Windows 7 で機能しない

Windows WDF デバイス ドライバー コードがあり、(デバイスが存在する前に) プレインストールできるようにしようとしています。有効なデバイス ID が存在するかどうかを確認することから始め、見つかった場合は次のようにします。

ただし、デバイスが存在しないかプラグインされていない場合は、次のようになります。

最初のケース (デバイスが存在する) では、すべて問題ありません。しかし、2 番目のケースでは、Microsoft の「ドライバー パッケージのプレインストール」に従って、INF を c:\Windows\inf\oem.inf にコピーする必要があり (これは実行されます)、デバイスが存在する場合は、ドライバー ベースをインストールする必要があります。 INF の情報にはありませんが、デバイス マネージャーに移動し、不明なデバイスを削除し、ハードウェアの変更をスキャンしてインストールする必要があります。

最初のケース (デバイスが存在する) では、ドライバーの .sys ファイルは c:\windows\system32\drivers ディレクトリにコピーされますが、2 番目のケースではコピーされません。.sys ファイルを c:\windows\system32\drivers に個別にコピーすると、すべてが機能します。私はそれを行うことができますが、Microsoftの「ドライバーパッケージのプレインストール」ドキュメントを読んだことに基づいて、すべてが自動的に処理されることになっていることを考えると、それは面倒な(そして危険な)ようです。

0 投票する
1 に答える
4148 参照

windbg - WDKRemoteUser パスワード?

Visual Studio 2013 をテスト マシンに接続して、WDF ドライバーをデバッグしようとしています。WDKRemoteUser という名前のユーザーを作成し、テストの実行中に自動ログオンを試みます。このユーザーのパスワードを知っている人はいますか?

0 投票する
1 に答える
383 参照

windows - Visual C# での Windows ドライバー テスト

スマート カード デバイスの WDF ドライバーのテスト ケースを C# で作成しようとしています。しかし、インストールされた Visual C# の下に Windows ドライバー > Windows Driver Test テンプレートが見つかりませんでした。Windows デスクトップ用の Visual Studio 2013 を使用しています。オンライン テンプレートで Windows Driver Test を見つけることさえできませんでした。インストールする必要がある他のパッケージはありますか?

0 投票する
1 に答える
2423 参照

c - DWORD pid を使用した PsLookupProcessByProcessId? パラメータ 1 には HANDLE が必要ですか?

ユーザー空間から取得したプロセス ID (DWORD pid) で関数 PsLookupProcessByProcessId() を使用するにはどうすればよいですか?

別のアプリケーション (calc.exe など) のプロセス ID を取得するユーザー空間の C++ アプリケーションをコーディングし、DeviceIoControl を使用して、作成した構造体を介して pid をドライバーに正常に送信できます。

プロセスの正しい pid を出力します。しかし、行うとき:

次の警告が表示されます。

C4022: 'PsLookupProcessByProcessId': 実パラメーター 1 のポインターが一致しません

警告はエラーとして扱われ、vs はコンパイルを許可しません。「PsLookupProcessByProcessId」のドキュメントを調べたところ、最初のパラメーターに「ハンドル」が必要であると書かれています。その場合、ユーザー空間アプリケーションから送信された DWORD pid を使用してハンドルを取得するにはどうすればよいでしょうか?

0 投票する
0 に答える
46 参照

kmdf - kmdf ドライバーへのハンドルを開いているユーザー プロセスを一意に識別する方法は?

KMDF ドライバーで、CreateFile を使用してドライバーへのハンドルを開いているプロセスを一意に識別したいと考えています。WdfXXX() 呼び出しを使用してこれを行う方法はありますか?

0 投票する
3 に答える
5820 参照

registry - Windows デバイス ドライバー (WDF) で完全なデバイス インスタンス ID を取得する

WindowsドライバーのカスタマイズにWDK 8.1を使用しています。

各デバイスに固有の WDF/KMDF ドライバーでデバイス インスタンス IDを取得したいと考えています。

  • OS : Windows 7(x64ビット)
  • デバイス インスタンス ID: {device-ID} \ {instance-specific-ID}
  • HKLM/SYSTEM/CurrentControlSet/Enum/PCI/の下にデバイスのレジストリエントリがあります。
  • すべてのデバイス ID の HKLM/SYSTEM/CurrentControlSet/Enum//PCI の下に、インスタンス ID がサブキーとして存在します。
  • WdfDeviceAllocAndQueryPropertyWdfMemoryGetBufferを使用すると、特定のデバイス IDを取得できますが、インスタンス固有の IDを取得できるようになりました。

接続された PCI デバイスの完全なデバイス インスタンス ID を取得することは可能ですか?

KMDF を使用してデバイス インスタンス ID を取得できるように、誰でも可能な方法を提案できますか。