3

私は Windows ベースの開発に非常に慣れていません。実際、これは私の最初のプロジェクトです。

Visual Studio 2008 を使用して dll ファイルにコンパイルされた Windows ベースのプロジェクトがあります。VS2008 への依存関係を削除し、作業中の Makefile ビルド システムを使用してコンパイルしたいと考えています。コンパイルは機能します。

ただし、結果の dll を実行すると (結果の dll をロードするテスト アプリを実行することを意味します)、「アプリケーションを正しく開始できませんでした - 0xc0150002)」というエラーが表示されます。この投稿のタイトルに。

グーグルは次のように述べています-1)マシンを再起動する必要があります-機能しませんでした2)dllを実行しているマシンにVS2008をインストールします-実際には実行可能なオプションではありません3)dllをロードするアプリ(これは単なるテストアプリです) ) も VS2008 経由でコンパイルされます - ビルド システム経由でもコンパイルする必要があります。

すべてが 32 ビットであることを確認しました。

私の質問は、この依存アセンブリエラーを処理するために欠落しているフラグはありますか? 私が尋ねる理由は、以前の dll (VS2008 でビルドされたもの) は問題なく実行できるため、フラグ/コンパイル オプションが欠落している可能性があるためです。

漠然とした初心者の質問で申し訳ありません。誰かがこれについての詳細を得るために読むべき情報源を教えてくれれば幸いです.

ありがとう!

4

1 に答える 1

1

VS2008 ソリューションを「リリース」モードではなく「デバッグ」モードに設定して、DLL をビルドしたときにデバッグ バージョンを取得したため、デバッグの依存関係を要求できます。VS2008 でソリューションを設定してリリース バージョンをビルドし、その DLL で同じエラーが発生するかどうかを確認してください。

于 2013-08-02T09:25:10.723 に答える