124

Visual Studio 2008 で新しい C++ プロジェクトを作成しました。まだコードは書かれていません。プロジェクトの設定のみが変更されました。

プロジェクトをコンパイルすると、次の致命的なエラーが発生します。

致命的なエラー LNK1104: ファイル 'C:\Program.obj' を開けません

4

27 に答える 27

162

この特定の問題は、パスにスペースが含まれる lib ファイルへの依存関係を指定することによって発生します。プロジェクトを正しくコンパイルするには、パスを引用符で囲む必要があります。

プロジェクトのプロパティの [構成プロパティ] -> [リンカー] -> [入力] タブに、[追加依存関係]プロパティがあります。この問題は、引用符を追加することで修正されました。たとえば、このプロパティを次のように変更します。

C:\Program Files\sofware sdk\lib\library.lib

に:

「C:\Program Files\sofware sdk\lib\library.lib」

引用符を追加した場所。

于 2008-09-25T14:33:01.647 に答える
5

私の問題は拡張機能の欠落でした.lib。私はリンクしているだけでmylib、VSはmylib.obj.

于 2015-12-22T09:51:46.410 に答える
4

追加ライブラリパスのフォルダ名に「,」が含まれていることが原因で、同じ問題が発生しました。追加ライブラリパスを変更することで解決しました。

于 2013-09-26T05:20:37.513 に答える
3

解決策 1 (私の場合): Windows エクスプローラー プロセスを再起動します (はい、Windows ファイル マネージャー)。

解決策 2:

  1. Visual Studio を閉じます。Windows ログオフ
  2. ログオンし、Visual Studio を再度開く
  3. 通常どおりビルドします。問題のあるファイルをビルドしてアクセスできるようになりました。

ファイルシステムまたはそれを制御している人が、そのアクセス許可で失われることがあると思います。Windowsセッションを再起動する前に、ゾンビmsbuild32.exeプロセスを強制終了し、ビジュアルスタジオを再起動し、問題のあるファイルを表示しても何もチェックしませんでした。ビルド構成の問題はありません。それは時々起こります。Windows の内部の一部が修正されず、再起動が必要です。

于 2016-12-30T09:27:52.347 に答える
2

インストールしたNugetパッケージ(ヘッダーのみではないもの)を使用して同じエラーが発生し、アンインストールしようとしました。
私にとって間違っていたのは、アンインストールしたばかりのパッケージのヘッダーを.cppファイルの1つにまだ含めていたことです(かなりばかげています、はい)。
で追加のライブラリ ディレクトリへのリンクを削除しましたProject -> Properties -> Linker -> Generalが、存在しないヘッダーを参照しようとしていたため、もちろん役に立ちませんでした。

この場合、間違いなく紛らわしいエラー メッセージです。ヘッダー名<boost/filesystem.hpp>"cannot open file 'llibboost_filesystem-vc140-mt-gd-1_59.lib'".

于 2016-01-19T11:22:31.187 に答える
1

アセンブリ プロジェクト (ProjectName -> Build Dependencies -> Build Customizations -> Masm (選択)) の場合、Generate Preprocessed Source ListingTrueに設定すると問題が発生し、設定をクリアすると修正されました。VS2013はこちら。

于 2014-11-16T00:26:17.397 に答える
1

メインの実行可能ファイルが見つからないというリンカーと同じ問題に遭遇しました。これは、新しいVisual Studio 2013へのソリューションの移植中に発生しました。ソリューションは、マネージド プロジェクトとアンマネージド プロジェクト/コードのさまざまな組み合わせです。問題 (および修正) は、ソリューション フォルダーにapp.configファイルが見つからないことになりました。これを理解するのに1日かかりました:(、出力ログはあまり役に立ちませんでした。

于 2014-12-04T21:58:31.483 に答える
0

私の問題は、デバッグしようとしていた .dll ファイルを使用する他のアプリケーションが原因でした。

.dll を使用していたアプリケーションを閉じると、解決しました。

于 2020-09-13T01:32:38.123 に答える