既にあるソース ファイルからのドライバーの作成

Windows Driver Kit (WDK) for 8 以降、WDK は Microsoft Visual Studio と完全に統合されています。 現在の WDK は、Visual Studio ソリューションとプロジェクトをビルドする場合と同じコンパイラとビルド ツールを使います。以前のバージョンの WDK (WDK 8 より前) で使われていた Windows ビルド ユーティリティ (Build.exe) は、MSBuild に置き換えられました。以前のバージョンの WDK を使って作ったドライバーがある場合は、既にあるコードから Visual Studio プロジェクトとソリューションを簡単に作ることができます。

重要  WDK 8 で作られたプロジェクトやソリューションは、Windows Driver Kit (WDK) 8.1 と Microsoft Visual Studio 2013 で使うことができるようにアップグレードする必要があります。プロジェクトやソリューションを開く前に、ProjectUpgradeTool を実行してください。ProjectUpgradeTool はプロジェクトとソリューションを変換し、WDK 8.1 を使って構築できるようにします。

 

WDK には変換ユーティリティが用意されていて、ドライバーの sourcesdirsmakefile.inc ファイルから Visual Studio ソリューション ファイルとプロジェクト ファイルを生成できます。このユーティリティは、既にある sources ファイルと同じディレクトリ内に Visual Studio ソリューション ファイルとプロジェクト ファイルを作ります。このユーティリティによって、ソース コードまたは以前のビルド ファイルが変更されることはありません。Windows XP 上でドライバーをサポートする必要がある場合は、Windows XP 用には以前のビルド システムを引き続き使い、Windows 8.1、Windows 8、Windows 7、Windows Vista 用には、WDK 8.1 Preview または WDK 8 と、Visual Studio プロジェクトおよびソリューション ファイルを使うことができます。

既にあるソース ファイルから Visual Studio ドライバー プロジェクトを作成するには、次の方法があります。

  • Visual Studio を使い、既にあるドライバー プロジェクトを開いて変換する (sourcesdirs ファイルに基づいて)。
  • Visual Studio コマンド プロンプト ウィンドウと、WDK の sourcesdirs ファイル コンバーター (Nmake2MsBuild.exe) を使う。
  • (Recommended) 提供されている Windows ドライバー テンプレートのいずれかを使って、Visual Studio で新しい Windows ドライバー ソリューションを作ります。 ドライバー モデルのテンプレートを使って作業を始めると、プロジェクトの構造が適切に設定され、適切なプラットフォーム ツールセットが選ばれます。その後、ソリューションにソース ファイルを追加できます。テンプレートの選択については、「新しいデバイス ファンクション ドライバーの作成」、「新しいフィルター ドライバーの作成」、または「新しいソフトウェア ドライバーの作成」をご覧ください。

Hh454827.wedge(ja-jp,VS.85).gif以前のバージョンの WDK で作成されたドライバー プロジェクトを開いて変換するには ([ファイル] > [開く])

  1. Microsoft Visual Studio Ultimate 2012 を開きます。[ファイル] メニューの [開く] をクリックし、[Convert Sources/Dirs] (Sources/Dirs の変換) をクリックします。

  2. [開く] ダイアログ ボックスでドライバーの sources ファイルまたは dirs ファイルを含むディレクトリに移動し、ファイルを選んで [開く] をクリックします。 Visual Studio Ultimate 2012 の [出力] ウィンドウに、Visual Studio プロジェクトの変換と作成についての情報メッセージが表示されます。 sources ファイル内の要素がどのように変換されたかに関する詳しい情報については、変換ログ (Nmake2MsBuild_sources.log) で見ることができます。 変換の一環として、ログ ファイルを開いて表示するかどうかが確認されます。

  3. ソリューション エクスプローラーでプロジェクトを調べます。

    「UMDF ドライバーを変換する場合の追加手順」をご覧ください。

Hh454827.wedge(ja-jp,VS.85).gif既にあるコードからドライバー プロジェクトを作成するには (コマンド ライン)

  1. Visual Studio のコマンド プロンプト ウィンドウを開きます。 プロジェクトが %PROGRAMFILES% にある場合は、管理者特権を使ってコマンド プロンプト ウィンドウを開く必要があります ([管理者として実行])。

  2. Nmake2MsBuild 変換ユーティリティ (Nmake2MsBuild.exe) を実行し、ドライバーの sources ファイルまたは dirs ファイルの名前とパスを指定します。

    一度に 2 つ以上の sourcesファイルを指定できます。変換されたプロジェクトはすべて、同じソリューションとパッケージ プロジェクトを共有します。

    dirs ファイルに対して Nmake2MsBuild ユーティリティを実行すると、そのディレクトリ ツリーのすべての sources ファイルがスキャンされ、ファイルごとに Visual Studio プロジェクト ファイルが生成されます。

    変換ツールは、%PROGRAMFILES%\Windows Kits\8.0\bin\x86\ ディレクトリにあります。

    たとえば、C:\Myproj ディレクトリに既にある sources ファイルの Visual Studio プロジェクト ファイルを生成するには、次のコマンドを入力します。

    Nmake2MsBuild.exe  c:\myProj\sources
    
  3. Visual Studio でプロジェクト ファイル (*.vcxproj) またはソリューション ファイル (*.sln) を開いて、変換を確認します。 Visual Studio を起動し、[開く] をクリックして、sources ファイルを変換したディレクトリに移動します。 既定のビルド構成を使って、プロジェクトをビルドしてみます。

    変換されたプロジェクト ファイルのトラブルシューティングや検証が必要になった場合に使うことができるログ ファイルが、ユーティリティによって作成されます。既定のログ ファイルの名前は、Nmake2MSBuild_sources.log です。ログ ファイルには、エラーと警告の報告だけでなく、どのようにソース ファイル内の要素が解釈され、Visual Studio プロジェクトでの対応物に翻訳されたかについての説明も含まれます。

    「UMDF ドライバーを変換する場合の追加手順」をご覧ください。

Nmake2MsBuild ユーティリティ

変換ツールは、%PROGRAMFILES%\Windows Kits\8.0\bin\x86\ ディレクトリにあります。 変換ユーティリティの使い方とオプションについては、「Nmake2MsBuild」をご覧ください。

UMDF ドライバーを変換する場合の追加手順

既定では、変換ユーティリティによって、ドライバー パッケージ プロジェクトはカーネル デバッガー (Debugging Tools for Windows - カーネル デバッガー) を使うように構成されます。 UMDF ドライバーを Visual Studio ソリューションに変換する場合、ユーザー モード (リモート) デバッガーを使用できるように、この設定を変更する必要があります。

Hh454827.wedge(ja-jp,VS.85).gifユーザー モード (リモート) デバッガーを指定するには

  1. ドライバー プロジェクトのプロパティ ページを開きます。ソリューション エクスプローラーでドライバー パッケージ プロジェクトを右クリックし、[プロパティ] をクリックします。
  2. ドライバー パッケージ プロジェクトのプロパティ ページで、[構成プロパティ] をクリックし、[デバッグ] をクリックします。
  3. デバッガーからドロップダウン メニューを開き、[Debugging Tools for Windows - Remote Debugging] (Debugging Tools for Windows - リモート デバッグ) を選びます。

ターゲット コンピューターの構成と、デバッグ ケーブルの設定について詳しくは、「Visual Studio でのカーネル モード デバッグの設定」と「ドライバーの展開およびテストのためのコンピューターのプロビジョニング (WDK 8.1)」をご覧ください。

  カーネル デバッガーを使って UMDF ドライバーをデバッグすることもできますが、ユーザー モード (リモート) デバッガーの方が便利です。 UMDF テンプレートから UMDF ドライバーを作る場合は、既定でユーザー モード デバッガーが選ばれています。

 

関連トピック

WDK と Visual Studio のビルド環境

Nmake2MsBuild

ProjectUpgradeTool

MSBuild

チュートリアル: MSBuild の使用に関するページ

新しいデバイス ファンクション ドライバーの作成

新しいフィルター ドライバーの作成

新しいソフトウェア ドライバーの作成