次の方法で共有


[リンカ] プロパティ ページ

更新 : 2007 年 11 月

このトピックでは、[全般] ([リンカ] プロパティ ページ) の以下のプロパティについて説明します。

  • [インポート ライブラリの無視]
    このビルドから生成された .lib 出力を依存プロジェクトにリンクしないように、リンカに通知します。このため、プロジェクト システムは、ビルド時に .lib ファイルを生成しない .dll ファイルを処理できます。あるプロジェクトが DLL を生成する他のプロジェクトに依存している場合、プロジェクト システムでは子プロジェクトによって生成される .lib ファイルを自動的にリンクします。この動作は COM DLL やリソースだけの DLL を生成するプロジェクトには不要な場合があります。これらの DLL には意味のあるエクスポート内容が含まれません。DLL にエクスポート内容が含まれない場合は、リンカで .lib ファイルが生成されません。ディスクにエクスポート .lib ファイルがなく、この DLL とリンクするようにプロジェクト システムからリンカに指示が出された場合は、リンクに失敗します。

    この問題を解決するには、[インポート ライブラリの無視] を使用します。このプロパティを Yes に設定すると、プロジェクト システムは .lib ファイルの有無を無視し、このプロジェクトに依存する他のプロジェクトが、存在しない .lib ファイルとリンクされないようにします。

    プログラムを使用してこのプロパティにアクセスする方法については、「IgnoreImportLibrary」を参照してください。

  • [出力の登録]
    .dll プロジェクトだけに有効な regsvr32.exe /s $(TargetPath) を実行します。.exe プロジェクトでは、このプロパティは無視されます。.exe 出力を登録する場合は、構成にビルド後のイベントを設定し、登録済みの .exe ファイルに必要なカスタム登録を行います。

    プログラムを使用してこのプロパティにアクセスする方法については、「RegisterOutput」を参照してください。

  • [ユーザーごとのリダイレクト]
    Visual Studio の登録はこれまで、HKEY_CLASSES_ROOT (HKCR) で行われてきました。Windows Vista を使用して HKCR にアクセスするには、システム特権のあるモードで Visual Studio を実行する必要があります。開発者は常にシステム特権のあるモードで実行するわけではありませんが、登録を処理する必要があります。ユーザーごとのリダイレクトにより、このモードで実行せずに登録を行うことができるようになります。

    ユーザーごとのリダイレクトは、HKCR への書き込みが HKEY_CURRENT_USER (HKCU) にリダイレクトされるように強制します。ユーザーごとのリダイレクトをオフにすると、プログラムが HKCR への書き込みを試行するときにプロジェクト ビルド エラー PRJ0050 が発生する場合があります。

  • [リンク ライブラリの依存関係]
    依存プロジェクトによって生成された .lib ファイルをリンクするかどうかを選択できます。通常は、.lib ファイルをリンクするように指定します。

  • [ライブラリ依存関係の入力の使用]
    大規模なプロジェクトでは、依存プロジェクトによって .lib ファイルが生成される場合、インクリメンタル リンクは無効にされています。.lib ファイルを生成する依存プロジェクトが多数存在する場合、アプリケーションのビルドに長時間を要する場合があります。このプロパティを Yes に設定すると、プロジェクト システムによってインクリメンタル リンクが有効にされ、依存プロジェクトが生成する .lib ファイルに対して .obj ファイルがリンクされます。

[全般] ([リンカ] プロパティ ページ) を表示する方法については、「方法 : [プロパティ ページ] でプロジェクトのプロパティを指定する」を参照してください。

参照

参照

[VC++ ディレクトリ] ([オプション] ダイアログ ボックス - [プロジェクトおよびソリューション])

プロパティ ページ (C++)