次の方法で共有


静的ライブラリと動的ライブラリのリンク (Direct3D 10)

アプリケーションを適切に実行するには、ホスト コンピューターに適切な DLL がインストールされている必要があります。 これらの DLL は、オペレーティング システムまたはアプリケーションの再頒布可能パッケージによって提供される場合があります。

ライブラリが適切な DLL を読み込む

DirectX SDK に含まれるライブラリは、実行時に適切な DLL を自動的に読み込みます。 この規則の例外は d3dx10.lib/d3dx10d.lib です。これにより、そのバージョンの SDK に付属していたd3dx10.dllが読み込まれます。 たとえば、ダウンロードした SDK にd3dx10_33.dllとd3dx10_34.dllが含まれている場合、その SDK に付属のライブラリ (d3dx10.lib) がd3dx10_34.dll読み込まれます。 後続の SDK が後で d3dx10_35.lib を含んでインストールされた場合、前の SDK の d3dx10.lib は引き続きd3dx10_34.dll読み込まれます。 新しい SDK の d3dx10.lib はd3dx10_35.dll読み込まれます。

バイナリの再配布

再配布できるのは、d3dx10.dll (および同じファイルの以降のバージョン) のみです。 このファイルを再配布するには、 DirectXSetup 関数を使用する必要があります。 この関数の使用と再頒布可能パッケージのまとめの詳細については、「 DirectSetup を使用した DirectX のインストール」を参照してください。 その他の必要なバイナリはすべて、Windows Vista に含まれています。 再配布できるバイナリは、次のディレクトリにあるバイナリのみです。

(SDK root)\Redist

次の表では、開発者が注意する必要があるバイナリについて説明します。

Direct3D 10 バイナリ 説明
/d3dx10d.dll のd3dx10.dll D3DX10 コンポーネントの小売とデバッグ。小売コンポーネントは REDIST CAB で再配布できます。
d3d10ref.dll ラスタライザーを参照します。 グラフィックス パイプラインのソフトウェア実装を提供します。 Windows SDK またはレガシ DirectX SDK の一部としてのみ含まれており、再配布することはできません。 リファレンス ラスタライザーは、デバッグのみを目的としています。 明示的なリンクは必要ありません。参照デバイスを作成しようとすると ( D3D10CreateDevice を参照)、この dll が存在する場合は読み込まれます。
d3d10sdklayers.dll API 呼び出しとランタイム実行の間のレイヤーとして機能する一連の SDK ユーティリティ 。 デバッグ レイヤー と参照への切り替えレイヤーが含まれます。 明示的なリンクは必要ありません。デバイスが適切なレイヤー フラグを使用して作成された場合、この DLL は自動的に読み込まれます。 このコンポーネントは、開発とデバッグのみを目的としています。 Windows SDK またはレガシ DirectX SDK の一部としてのみ含まれており、再配布することはできません。

 

Direct3D 10 のプログラミング ガイド

Direct3D 10 グラフィックス