3

(.net)c ++ dllを使用する(com)c++プロジェクトがあります。プロジェクトはコンパイルされ、正常に実行されていました。

今、私がしたのはdllに変更を加えることだけで、致命的なエラーが発生しますc1083-(com)プロジェクトを再コンパイルするときにインクルードファイルstdafx.hを開くことができません。

これはどういう意味ですか?

4

2 に答える 2

1

stdafx.hを探します。可能性は次のとおりです。

  1. 欠落していない場合は、マシンを再起動してみてください。sysinternalsのhandle.exeを使用して、そのファイルを保持しているユーザーを見つけることもできます。
  2. 欠落している場合は作成してください。
  3. 一方、プロジェクトが元々プリコンパイル済みヘッダーを使用しておらず、オプションが誤ってオンにされた可能性があります。そのため、プロジェクトのプロパティでプリコンパイル済みヘッダーオプションをオフにします。
于 2010-02-11T15:30:58.867 に答える
0

includeステートメントで山括弧を使用する場合:

#include <stdafx.h>

...代わりに引用符を使用するように変更してみてください:

#include "stdafx.h"

2つ異なります。引用符を使用する場合は、コンパイラに「最初にローカルディレクトリを検索してから、検索パスに移動する」ように指示します。ただし、山かっこを使用する場合は、コンパイラに「ローカルディレクトリを検索しないでください。検索パスを検索するだけです」と指示します。stdafx.hの場合、プロジェクトの一部であるものが必要なので、最初にローカルディレクトリを検索する必要があります。

それは私のペットのぞき見に私を連れて来ます、しかしそれは別のショーのための話です...

于 2010-02-11T18:07:51.907 に答える