次の方法で共有


COM 相互運用性 (第 1 部) サンプル

Download sample

このサンプルでは、C# プログラムをアンマネージ COM コンポーネントと相互運用する方法を示します。

Security noteセキュリティに関するメモ :

このサンプル コードは概念を示す目的で提供されているものです。必ずしも最も安全なコーディング手法に従っているわけではないので、アプリケーションまたは Web サイトでは使用しないでください。Microsoft は、サンプル コードが意図しない目的で使用された場合に、付随的または間接的な損害について責任を負いません。

ソリューション エクスプローラでサンプル ファイルを開くには

  1. [サンプルのダウンロード] をクリックします。

    [ファイルのダウンロード] メッセージ ボックスが表示されます。

  2. [開く] をクリックし、zip フォルダ ウィンドウの左列で、[ファイルをすべて展開] をクリックします。

    抽出 ウィザードが開きます。

  3. [次へ] をクリックします。ファイルを抽出するディレクトリを必要に応じて変更し、[次へ] をクリックします。

    [展開されたファイルを表示する] チェック ボックスがオンになっていることを確認して [完了] をクリックします。

  4. サンプルの .sln ファイルをダブルクリックします。

    サンプル ソリューションがソリューション エクスプローラに表示されます。場合によっては、ソリューションの位置が信頼されていないという、セキュリティ上の警告が表示されることがあります。[OK] をクリックして続行します。

Visual Studio で COM 相互運用性 (第 1 部) サンプルをビルドして実行するには

  1. ソリューション エクスプローラで、Interop1 プロジェクトを右クリックし、[スタートアップ プロジェクトに設定] をクリックします。

  2. ソリューション エクスプローラで、Interop1 プロジェクトを右クリックし、[プロパティ] をクリックします。

  3. [構成プロパティ] フォルダを開き、[デバッグ] をクリックします。

  4. [コマンド ライン引数] プロパティに、「c:\winnt\clock.avi」などの AVI ファイルを入力します。

  5. [OK] をクリックします。

  6. [デバッグ] メニューの [デバッグなしで開始] をクリックします。

  7. Interop2 について前の手順を繰り返します。

Interop1 に含まれている QuartzTypeLib.dll が古い場合

  1. ソリューション エクスプローラで、Interop1 の [参照設定] を開きます。

  2. [QuartzTypeLib] を右クリックし、[削除] をクリックします。

  3. [参照設定] を右クリックし、[参照の追加] をクリックします。

  4. [COM] タブで、"ActiveMovie control type library" という名前のコンポーネントを選択します。

  5. 選択して、[OK] をクリックします。

  6. Interop1 を再ビルドします。

    Noteメモ :

    コンポーネントに参照を追加すると、コマンド ラインで tlbimp を呼び出して QuartzTypeLib.dll を作成する場合と同じ処理が行われます (次の手順を参照)。

コマンド ラインから COM 相互運用性 (第 1 部) サンプルをビルドして実行するには

  1. Change Directory コマンドを使用して、Interop1 ディレクトリに移動します。

  2. 次のように入力します。

    tlbimp %windir%\system32\quartz.dll /out:QuartzTypeLib.dll
    csc /r:QuartzTypeLib.dll interop1.cs
    interop1 %windir%\clock.avi
    
  3. Change Directory コマンドを使用して、Interop2 ディレクトリに移動します。

  4. 次のように入力します。

    csc interop2.cs
    interop2 %windir%\clock.avi
    

参照

関連項目

相互運用性 (C# プログラミング ガイド)

概念

C# プログラミング ガイド

その他の技術情報

Visual C# のサンプル