1

myProjectDLL とmyProject_TesterDLL のデバッグに使用している Win32 コンソール アプリケーションの2 つのプロジェクトを使用したソリューションがあります。

ソリューションをビルドすると、エラー リストに次のエラー メッセージが表示されます。

error LNK1104:
cannot open file 'U:\Software Development\c++ projects\myProject\Debug\myProject.lib'
U:\Software Development\c++ projects\myProject\myProject_Tester\LINK    
myProject_Tester

myProjectで参照として追加しましたmyProject_Testerが、編集中に(のヘッダー ファイル)myProject_Tester.cppを入力してヘッダー ファイルをインクルードしようとすると、Intellisense に表示されません。#include "myProjectDLL.h"myProjectmyProjectDLL.h

U:\Software Development\c++ projects\myProject\Debugの追加のインクルードディレクトリの下にも追加しましたmyProject_Tester

myProject_Testerそれを接続するために何かを構成する必要があるプロパティのどこかに他の場所がありますmyProjectか?

編集: myProjectDLL.h に使用しているヘッダー ファイルは次のとおりです。

//myProjectDLL.h

#ifdef MYPROJECT_EXPORTS
#define MYPROJECT_API __declspec(dllexport) 
#else
#define MYPROJECT_API __declspec(dllimport) 
#endif

namespace myProject
{
    class FileOperator
    {
    public:
        static int openDoc(int projectID,int docID);
    };
}
4

1 に答える 1

3

[追加のインクルード ディレクトリ] 設定が正しく設定されていません。.h ファイルが Debug フォルダーに存在しないことは確かです。代わりに U:\Software Development\c++ projects\myProject にします。

「myProject」プロジェクトをビルドした後、.lib ファイルが実際に存在することを確認してください。見つからない場合は、__declspec(dllexport) を使用して、使用可能にする関数またはクラスをエクスポートするようにリンカーに指示するのを忘れています。

また、プロジェクトが正しい順序でビルドされていることを確認してください。コンソール プロジェクトのビルドを開始する前に、「myProject」をビルドする必要があります。必要に応じて、ソリューション エクスプローラー ウィンドウでコンソール プロジェクトを右クリックし、[プロジェクトの依存関係] をクリックして、ダイアログ ボックスで myProject にチェックマークを付けます。

于 2013-10-09T21:41:11.340 に答える