竹園論壇

標題: Easyx 無法解析的外部指令 [打印本頁]

作者: jd3    時間: 2014-9-8 00:56
標題: Easyx 無法解析的外部指令
本帖最後由 jd3 於 2014-9-20 23:50 編輯

想用easyx寫東西
但是我自己寫的編譯都會跑出"無法解析的外部指令"
後來看一看應該是include和define的東西不一樣

可是又看不懂註解@@

想問

Source.cpp 裡的
[C++] 純文本查看 復制代碼
#define _CRT_SECURE_NO_WARNINGS


還有StdAfx.h裡的頭尾是什麼@@
[C++] 純文本查看 復制代碼
// stdafx.h : include file for standard system include files,
//  or project specific include files that are used frequently, but
//      are changed infrequently
//

#if !defined(AFX_STDAFX_H__7A960C60_630B_486A_A609_28904F5AF35C__INCLUDED_)
#define AFX_STDAFX_H__7A960C60_630B_486A_A609_28904F5AF35C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000


// TODO: reference additional headers your program requires here
#include<Windows.h>
#include<graphics.h>

#include<conio.h>
#include<fstream>
#include<iostream>

#include<string>
#include<cstring>
#include<sstream>

#include<cmath>
#include<ctime>
#include<map>
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_STDAFX_H__7A960C60_630B_486A_A609_28904F5AF35C__INCLUDED_)


作者: Sylveon    時間: 2014-9-8 09:53
能貼完整的錯誤資訊嗎??

[C++] 純文本查看 復制代碼
#define _CRT_SECURE_NO_WARNINGS

這一行是關閉VC++的警告功能,詳細資訊參考這裡
http://msdn.microsoft.com/zh-tw/library/8ef0s5kh.aspx

至於StdAfx.h這個標頭就只是把所有要include的header全集中到這裡。VC++有一個功能叫做「先行編譯標頭檔」,可以把固定的標頭檔先行編譯起來,加快後續的編譯速度 ( 你沒看過編譯一個專案花上半個小時的程式吧XD ) ,至於前後#開的只是避免這一個header被重複include的保護措施,這還滿常見的,格式通常如下


[C++] 純文本查看 復制代碼
#ifndef _HEADER_NAME_H
#define _HEADER_NAME_H
//CODE HERE


#endif //ifndef 的結尾

如果_HEADER_NAME_H沒有被定義的話,就編譯#ifndef到#endif中間的程式碼,此時_HEADER_NAME_H被定義了(第二行),所以當你第二次include時,就不會編譯到ifndef裡的東西


作者: jd3    時間: 2014-9-8 15:27
Sylveon 發表於 2014-9-8 09:53
能貼完整的錯誤資訊嗎??

有一個是設定視窗文字的
error C2664: 'SetWindowTextW' : 無法將參數 2 從 'const char [63]' 轉換成 'LPCWSTR'

期他一堆都是長得像這樣
error LNK2019: 無法解析的外部符號 __imp__BitBlt@36 在函式 "public: __thiscall IMAGE::IMAGE(class IMAGE const &)" (??0IMAGE@@QAE@ABV0@@Z) 中被參考        easyxw.lib



完整的編譯輸出:
[Plain Text] 純文本查看 復制代碼
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__BitBlt@36 在函式 "public: __thiscall IMAGE::IMAGE(class IMAGE const &)" (??0IMAGE@@QAE@ABV0@@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__BitBlt@36
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__BitBlt@36
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2001: 無法解析的外部符號 __imp__BitBlt@36
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateCompatibleDC@4 在函式 "public: __thiscall IMAGE::IMAGE(class IMAGE const &)" (??0IMAGE@@QAE@ABV0@@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateCompatibleDC@4
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateFontIndirectW@4
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateFontIndirectW@4 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateFontIndirectW@4
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateFontIndirectW@4
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateFontIndirectW@4
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__CreatePen@12 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__CreatePen@12
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateSolidBrush@4 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateSolidBrush@4
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateSolidBrush@4
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateSolidBrush@4
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__DeleteDC@4 在函式 "public: virtual __thiscall IMAGE::~IMAGE(void)" (??1IMAGE@@UAE@XZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteDC@4
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__DeleteObject@4 在函式 "public: bool __thiscall CInputBox:oModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteObject@4
1>easyxw.lib(Image.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteObject@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteObject@4
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteObject@4
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2001: 無法解析的外部符號 __imp__DeleteObject@4
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__GetStockObject@4 在函式 "public: virtual __thiscall IMAGE::~IMAGE(void)" (??1IMAGE@@UAE@XZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__GetStockObject@4
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__GetStockObject@4
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SelectClipRgn@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectClipRgn@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectClipRgn@8
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectClipRgn@8
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__SelectObject@8 在函式 "public: bool __thiscall CInputBox:oModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectObject@8
1>easyxw.lib(Image.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectObject@8
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectObject@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectObject@8
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2001: 無法解析的外部符號 __imp__SelectObject@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SetBkColor@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkColor@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkColor@8
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkColor@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SetBkMode@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkMode@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkMode@8
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetBkMode@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SetGraphicsMode@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetGraphicsMode@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SetTextColor@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetTextColor@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetTextColor@8
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetTextColor@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__SetWorldTransform@8 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetWorldTransform@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__SetWorldTransform@8
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetWorldTransform@8
1>easyxw.lib(Image.obj) : error LNK2019: 無法解析的外部符號 __imp__MoveToEx@16 在函式 "public: virtual void __thiscall IMAGE::SetDefault(void)" (?SetDefault@IMAGE@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__MoveToEx@16
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2001: 無法解析的外部符號 __imp__MoveToEx@16
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__MoveToEx@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetMessageW@16 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__GetMessageW@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__TranslateMessage@4 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__TranslateMessage@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__DispatchMessageW@4 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__DispatchMessageW@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__SendMessageW@16 在函式 "public: struct MOUSEMSG __thiscall EasyX::GraphWnd::GetMouseMsg(void)" (?GetMouseMsg@GraphWnd@EasyX@@QAE?AUMOUSEMSG@@XZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__SendMessageW@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__PostMessageW@16 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__PostMessageW@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__DefWindowProcW@16 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__DefWindowProcW@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__PostQuitMessage@4 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__PostQuitMessage@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__UnregisterClassW@8 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__RegisterClassExW@4 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__RegisterClassExW@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateWindowExW@48 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateWindowExW@48
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__DestroyWindow@4 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__DestroyWindow@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ShowWindow@8 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__ShowWindow@8
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__SetWindowPos@28 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__IsWindowVisible@4 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetDC@4 在函式 "public: struct HWND__ * __thiscall EasyX::GraphWnd::InitGraphWnd(int,int,int)" (?InitGraphWnd@GraphWnd@EasyX@@QAEPAUHWND__@@HHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__GetDC@4
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ReleaseDC@8 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__ReleaseDC@8
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__BeginPaint@8 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__EndPaint@8 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetWindowRect@8 在函式 "public: void __thiscall EasyX::GraphWnd::CloseGraphWnd(void)" (?CloseGraphWnd@GraphWnd@EasyX@@QAEXXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__GetWindowRect@8
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__AdjustWindowRectEx@16 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__AdjustWindowRectEx@16
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ScreenToClient@8 在函式 "private: static long __stdcall EasyX::GraphWnd::WndProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WndProc@GraphWnd@EasyX@@CGJPAUHWND__@@IIJ@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__LoadCursorW@8 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__LoadCursorW@8
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__DestroyIcon@4 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.GraphWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ExtractIconW@12 在函式 "private: static unsigned long __stdcall EasyX::GraphWnd::ThreadFunc(void *)" (?ThreadFunc@GraphWnd@EasyX@@CGKPAX@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Arc@36 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::arc(int,int,int,int,double,double)" (?arc@DrawOnWnd@EasyX@@UAEXHHHHNN@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Arc@36
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateBitmap@20 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::setfillstyle(class FILLSTYLE const *)" (?setfillstyle@DrawOnWnd@EasyX@@UAEXPBVFILLSTYLE@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateBitmap@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateBrushIndirect@4 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::setfillstyle(class FILLSTYLE const *)" (?setfillstyle@DrawOnWnd@EasyX@@UAEXPBVFILLSTYLE@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateBrushIndirect@4
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateRectRgn@16 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::clearcliprgn(void)" (?clearcliprgn@DrawOnWnd@EasyX@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__CreateRectRgn@16
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Ellipse@20 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::fillcircle(int,int,int)" (?fillcircle@DrawOnWnd@EasyX@@UAEXHHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Ellipse@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ExtFloodFill@20 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::floodfill(int,int,int)" (?floodfill@DrawOnWnd@EasyX@@UAEXHHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__ExtFloodFill@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__FillRgn@12 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::clearcliprgn(void)" (?clearcliprgn@DrawOnWnd@EasyX@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__FillRgn@12
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetClipRgn@8 在函式 "public: virtual void __thiscall EasyX:rawOnWnd::clearcliprgn(void)" (?clearcliprgn@DrawOnWnd@EasyX@@UAEXXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__GetClipRgn@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetCurrentObject@8 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::gettextstyle(struct tagLOGFONTW *)" (?gettextstyle@DrawOnWnd@EasyX@@UAEXPAUtagLOGFONTW@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__GetCurrentObject@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__LineTo@12 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::line(int,int,int,int)" (?line@DrawOnWnd@EasyX@@UAEXHHHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__LineTo@12
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Pie@36 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::fillpie(int,int,int,int,double,double)" (?fillpie@DrawOnWnd@EasyX@@UAEXHHHHNN@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Pie@36
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Rectangle@20 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::fillrectangle(int,int,int,int)" (?fillrectangle@DrawOnWnd@EasyX@@UAEXHHHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Rectangle@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__RoundRect@28 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::fillroundrect(int,int,int,int,int,int)" (?fillroundrect@DrawOnWnd@EasyX@@UAEXHHHHHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__RoundRect@28
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__SetPixelV@16 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::putpixel(int,int,unsigned long)" (?putpixel@DrawOnWnd@EasyX@@UAEXHHK@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetPixelV@16
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__SetPolyFillMode@8 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::setpolyfillmode(int)" (?setpolyfillmode@DrawOnWnd@EasyX@@UAEXH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetPolyFillMode@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__SetROP2@8 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::setrop2(int)" (?setrop2@DrawOnWnd@EasyX@@UAEXH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__SetROP2@8
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__ExtCreatePen@20 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::setlinestyle(class LINESTYLE const *)" (?setlinestyle@DrawOnWnd@EasyX@@UAEXPBVLINESTYLE@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__ExtCreatePen@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__GetObjectW@12 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::gettextstyle(struct tagLOGFONTW *)" (?gettextstyle@DrawOnWnd@EasyX@@UAEXPAUtagLOGFONTW@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__GetObjectW@12
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__TextOutW@20 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd:uttextxy(int,int,wchar_t const *)" (?outtextxy@DrawOnWnd@EasyX@@UAEXHHPB_W@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__TextOutW@20
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Polygon@12 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::fillpolygon(struct tagPOINT const *,int)" (?fillpolygon@DrawOnWnd@EasyX@@UAEXPBUtagPOINT@@H@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Polygon@12
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__Polyline@12 在函式 "public: virtual void __thiscall EasyX::DrawOnWnd::polyline(struct tagPOINT const *,int)" (?polyline@DrawOnWnd@EasyX@@UAEXPBUtagPOINT@@H@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__Polyline@12
1>easyxw.lib(EasyX.DrawOnWnd.obj) : error LNK2019: 無法解析的外部符號 __imp__DrawTextW@20 在函式 "public: virtual int __thiscall EasyX::DrawOnWnd::drawtext(wchar_t const *,struct tagRECT *,unsigned int)" (?drawtext@DrawOnWnd@EasyX@@UAEHPB_WPAUtagRECT@@I@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2001: 無法解析的外部符號 __imp__DrawTextW@20
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2001: 無法解析的外部符號 __imp__DrawTextW@20
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2019: 無法解析的外部符號 __imp__GetDeviceCaps@8 在函式 "private: static void __cdecl EasyX::ImageFunc:oadImageFromMem(class EasyX::GlobalMemory *,class IMAGE *,int,int,bool)" (?LoadImageFromMem@ImageFunc@EasyX@@CAXPAVGlobalMemory@2@PAVIMAGE@@HH_N@Z) 中被參考
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateDIBSection@24 在函式 "public: static struct HBITMAP__ * __cdecl EasyX::ImageFunc::CreateBmp(int,int,unsigned long * *)" (?CreateBmp@ImageFunc@EasyX@@SAPAUHBITMAP__@@HHPAPAK@Z) 中被參考
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2019: 無法解析的外部符號 __imp__CreateStreamOnHGlobal@12 在函式 "private: static void __cdecl EasyX::ImageFunc:oadImageFromMem(class EasyX::GlobalMemory *,class IMAGE *,int,int,bool)" (?LoadImageFromMem@ImageFunc@EasyX@@CAXPAVGlobalMemory@2@PAVIMAGE@@HH_N@Z) 中被參考
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2019: 無法解析的外部符號 __imp__OleCreatePictureIndirect@16 在函式 "public: static void __cdecl EasyX::ImageFunc::saveimage(wchar_t const *,class IMAGE *)" (?saveimage@ImageFunc@EasyX@@SAXPB_WPAVIMAGE@@@Z) 中被參考
1>easyxw.lib(EasyX.ImageFunc.obj) : error LNK2019: 無法解析的外部符號 __imp__OleLoadPicture@20 在函式 "private: static void __cdecl EasyX::ImageFunc:oadImageFromMem(class EasyX::GlobalMemory *,class IMAGE *,int,int,bool)" (?LoadImageFromMem@ImageFunc@EasyX@@CAXPAVGlobalMemory@2@PAVIMAGE@@HH_N@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetClassInfoExW@12 在函式 "public: __thiscall CInputBox::CInputBox(struct HWND__ *,wchar_t *,int,wchar_t const *,wchar_t const *,wchar_t const *,int,int,bool)" (??0CInputBox@@QAE@PAUHWND__@@PA_WHPB_W22HH_N@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__SetFocus@4 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetFocus@0 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetKeyState@4 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__EnableWindow@8 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__UpdateWindow@4 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__SetForegroundWindow@4 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetWindowTextW@12 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetWindowTextLengthW@4 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__GetClientRect@8 在函式 "private: void __thiscall CInputBox::OnInitDialog(struct HWND__ *)" (?OnInitDialog@CInputBox@@AAEXPAUHWND__@@@Z) 中被參考
1>easyxw.lib(EasyX.InputBox.obj) : error LNK2019: 無法解析的外部符號 __imp__SystemParametersInfoW@16 在函式 "public: bool __thiscall CInputBox::DoModal(void)" (?DoModal@CInputBox@@QAE_NXZ) 中被參考
1>easyxw.lib(EasyX.Var.obj) : error LNK2019: 無法解析的外部符號 __imp__GdiSetBatchLimit@4 在函式 "public: __thiscall EasyX::GlobalVar::GlobalVar(void)" (??0GlobalVar@EasyX@@QAE@XZ) 中被參考
1>easyxw.lib(EasyX.Var.obj) : error LNK2019: 無法解析的外部符號 __imp__CoUninitialize@0 在函式 "public: __thiscall EasyX::GlobalVar::~GlobalVar(void)" (??1GlobalVar@EasyX@@QAE@XZ) 中被參考
1>easyxw.lib(EasyX.Var.obj) : error LNK2019: 無法解析的外部符號 __imp__CoInitialize@4 在函式 "public: __thiscall EasyX::GlobalVar::GlobalVar(void)" (??0GlobalVar@EasyX@@QAE@XZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetROP2@4 在函式 "public: virtual int __thiscall EasyX::DrawOnImg::getrop2(void)" (?getrop2@DrawOnImg@EasyX@@UAEHXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetBkMode@4 在函式 "public: virtual int __thiscall EasyX::DrawOnImg::getbkmode(void)" (?getbkmode@DrawOnImg@EasyX@@UAEHXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetDIBits@28 在函式 "protected: void * __thiscall EasyX::DrawOnImg::DDBToDIB(class IMAGE *,unsigned long,struct HPALETTE__ *)" (?DDBToDIB@DrawOnImg@EasyX@@IAEPAXPAVIMAGE@@KPAUHPALETTE__@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetPixel@12 在函式 "public: virtual unsigned long __thiscall EasyX::DrawOnImg::getpixel(int,int)" (?getpixel@DrawOnImg@EasyX@@UAEKHH@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetPolyFillMode@4 在函式 "public: virtual int __thiscall EasyX::DrawOnImg::getpolyfillmode(void)" (?getpolyfillmode@DrawOnImg@EasyX@@UAEHXZ) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__GetTextExtentPoint32W@16 在函式 "public: virtual int __thiscall EasyX::DrawOnImg::textheight(wchar_t const *)" (?textheight@DrawOnImg@EasyX@@UAEHPB_W@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__RealizePalette@4 在函式 "protected: void * __thiscall EasyX::DrawOnImg::DDBToDIB(class IMAGE *,unsigned long,struct HPALETTE__ *)" (?DDBToDIB@DrawOnImg@EasyX@@IAEPAXPAVIMAGE@@KPAUHPALETTE__@@@Z) 中被參考
1>easyxw.lib(EasyX.DrawOnImg.obj) : error LNK2019: 無法解析的外部符號 __imp__SelectPalette@12 在函式 "protected: void * __thiscall EasyX::DrawOnImg::DDBToDIB(class IMAGE *,unsigned long,struct HPALETTE__ *)" (?DDBToDIB@DrawOnImg@EasyX@@IAEPAXPAVIMAGE@@KPAUHPALETTE__@@@Z) 中被參考
1>C:\Users\J\Desktop\程式\S\S\Debug\S.exe : fatal error LNK1120: 89 個無法解析的外部符號
1>已將建置記錄儲存於 "file://c:\Users\J\Desktop\程式\S\S\S\Debug\BuildLog.htm"
1>S - 173 個錯誤,0 個警告
========== 建置: 0 成功、1 失敗、0 最新、0 略過 ==========



作者: Sylveon    時間: 2014-9-8 16:41
1. 要了解WINAPI對於字串有兩種版本的函數,以最常用的MessageBox來說,可以發現MessageBox有兩定義:MessageBoxA
MessageBoxW
觀察參數,只有一個地方不一樣MessageBoxA是LPCSTR,MessageBoxW是LPCWSTR,LPCSTR就是const char *,但是LPCWSTR是const wchar_t *,於是有了區別。
VC++預設的專案屬性是用unicode,用的是W系列;如果你要用A系列(ASCII),要到專案屬性設定字元集為ASCII。


通常字元沒搞好很容易爛掉就是了





歡迎光臨 竹園論壇 (http://forum.tfcis.org/) Powered by Discuz! X3.2