トップ回答者
device.tmhが見つかりません。

質問
-
デバイスドライバ初心者です。
ユーザーモードデバイスドライバーのチュートリアル通り進めているのですが、
device.tmhが見つかりませんとエラーが起きてしまいます。
can not open device.tmhで検索をかけたのですが、
In your project's properties, look under WPP Tracing and set "Run Wpp Tracing" to YES
と書いてたのですが、設定を見たところ「はい」になっていました。
wdkをインストールしたCドライブ上でdevice.tmhを検索したみたのですが、検索結果には表示されませんでした。
インストールが失敗しているのでしょうか。wdkやvisual studioはこのサイトの手順でインストールしたはずなのですが、
なんとかビルドできるようになるところまで回答お願いします。
回答
-
device.tmh 等の*.tmhファイルは、WPP(Windows Software Trace Preprocessor)によるトレース・イベント使用時に、必要かつ自動生成されるファイルです。WindowsのETW(Event Tracing for Windows)機構を利用することから、ETWデバッグとも呼ばれます。デバッグ・メッセージ表示にこれを使用しなければ不要です。
*.tmh 作成に必要な設定手順は下記の様にいくつかあり、一つでも欠けるか間違っていると作成されません。
- *.tmh 関連以外の全ファイルのコンパイルが警告なしに正常終了すること(重要!)
- プロジェクトのビルド対象アーキテクチャ&コンフィグ(Debug/Release)のWpp TracingがYes
- 正しいTrace.hが存在して、それをインクルードして前述Wpp Tracing項でファイル名指定。
現在は、UMDF2のテンプレートで自動作成されたプロジェクトそのままだと、ビルド時にうまく自動作成されます。
そのほか忘れがちで重要なポイントはVisual Studio自体をツールメニューで最新版に更新することです。
ファイルはプロジェクトのツリーの\x64\Debug以下にできます。
- 回答としてマーク Atomu Hidaka-MVP, Moderator 2019年2月11日 5:14
すべての返信
-
device.tmh 等の*.tmhファイルは、WPP(Windows Software Trace Preprocessor)によるトレース・イベント使用時に、必要かつ自動生成されるファイルです。WindowsのETW(Event Tracing for Windows)機構を利用することから、ETWデバッグとも呼ばれます。デバッグ・メッセージ表示にこれを使用しなければ不要です。
*.tmh 作成に必要な設定手順は下記の様にいくつかあり、一つでも欠けるか間違っていると作成されません。
- *.tmh 関連以外の全ファイルのコンパイルが警告なしに正常終了すること(重要!)
- プロジェクトのビルド対象アーキテクチャ&コンフィグ(Debug/Release)のWpp TracingがYes
- 正しいTrace.hが存在して、それをインクルードして前述Wpp Tracing項でファイル名指定。
現在は、UMDF2のテンプレートで自動作成されたプロジェクトそのままだと、ビルド時にうまく自動作成されます。
そのほか忘れがちで重要なポイントはVisual Studio自体をツールメニューで最新版に更新することです。
ファイルはプロジェクトのツリーの\x64\Debug以下にできます。
- 回答としてマーク Atomu Hidaka-MVP, Moderator 2019年2月11日 5:14