我有困難找出我未解決的外部錯誤。無法解析的外部
我有兩種不同的解決方案,都共享一個核心項目。解決方案#1稱爲SnapGame,解決方案#2稱爲SnapEditor。核心項目稱爲SnapCore。
我的SnapGame解決方案是一個Win32應用程序。它編譯,引用並鏈接SnapCore項目,沒有任何問題。
SnapEditor解決方案是Windows窗體應用程序。它編譯和引用SnapCore項目。但是,它不會正確鏈接。任何時候我嘗試引用SnapCore項目中的任何內容都會導致無法解析的外部錯誤。
SnapCore項目有一些GDI +支持類。 SnapCore項目中的所有類都位於SnapCore名稱空間下。
這裏是文件Form1.cpp:
#include "stdafx.h"
#include "App.h"
#include "Orient.h"
using namespace SnapCore;
using namespace SnapEdit;
void Form1::Init()
{
SnapCore::Orient orient;
new App();
}
這裏是鏈接錯誤,我得到:
1>Form1.obj : warning LNK4248: unresolved typeref token (01000049) for 'Gdiplus.GpCachedBitmap'; image may not run
1>Form1.obj : error LNK2028: unresolved token (0A000019) "public: __clrcall SnapCore::App::App(void)" ([email protected]@@[email protected]) referenced in function "public: void __clrcall SnapEdit::Form1::InitSnapCore(void)" ([email protected]@[email protected]@$$FQ$AAMXXZ)
1>Form1.obj : error LNK2028: unresolved token (0A00001A) "public: __clrcall SnapCore::Orient::Orient(void)" ([email protected]@@[email protected]) referenced in function "public: void __clrcall SnapEdit::Form1::InitSnapCore(void)" ([email protected]@[email protected]@$$FQ$AAMXXZ)
1>Form1.obj : error LNK2019: unresolved external symbol "public: __clrcall SnapCore::App::App(void)" ([email protected]@@[email protected]) referenced in function "public: void __clrcall SnapEdit::Form1::InitSnapCore(void)" ([email protected]@[email protected]@$$FQ$AAMXXZ)
1>Form1.obj : error LNK2019: unresolved external symbol "public: __clrcall SnapCore::Orient::Orient(void)" ([email protected]@@[email protected]) referenced in function "public: void __clrcall SnapEdit::Form1::InitSnapCore(void)" ([email protected]@[email protected]@$$FQ$AAMXXZ)
1>C:\Work\PC\SnapEdit\SnapEdit\Debug\SnapEdit.exe : fatal error LNK1120: 4 unresolved externals
我想不通,爲什麼不麻煩我SnapGame解決方案的鏈接,但SnapEditor解決方案不會。
任何幫助,將不勝感激。
您是否指定SnapEditor依賴於SnapCore? – Mordachai
是的。在SnapEdit解決方案的Project Dependecies下,SnapEdit項目依賴於SnapCore項目,並且SnapCore項目沒有依賴關係。 – SnapGames