在文庫上下載了這片文章,照著做了,還真的是安裝編譯好了,環境是VC6.0和2005(vc8.0)+Codejock.Xtreme.Toolkit.Pro.v13.2.1 (CSDN下載的)、
主要是在編譯的選擇以及產生的庫的對應關係上做了糾正, 另外對於仍然廣泛使用的VC6.0來說,
工程--選項---目錄裡配置的,而且是安裝編譯好以後,自動設定的,不用手動設定的
另外編譯了三次,把三個選項都編譯了一遍,在目錄下應該產生12個庫檔案,但是第一個選項,只編譯出了2個庫就報錯,終止了,不知什麼原因,但是不影響程式的執行了,終於把他安裝好了, 自己建立了一個VC6.0下Xtreme.Toolkit. warziad工程,基於單對話方塊的,不加任何代碼,編譯通過了,OK,沒有提示缺少什麼庫的了
這個庫在VC下是非常好用的,在好朋友的協助下快速安裝成功,這裡做一下詳細的步驟:
1.先下載Codejock.Xtreme.Toolkit.Pro.v13.2.1 (這個版本不支援2010)
2.安裝的時候一路下一步
3.安裝完以後會出一個新的配置視窗,這裡你可以跟據需要是否選擇UNICODE的版本
或者DLL 還是靜態LIB方式這裡推薦LIB用LIB發布時不用帶DLL了。
4.選擇完成後,會彈出一個CMD視窗開始自己編譯,這個過程 比較慢慢5分鐘到10分鐘不等
5.編譯完後,你可以編譯例子了,編譯前做一下設定,在Project->Setting->General->Microsoft Foundation Classes中選擇
Use MFC in a Static Library就可以編譯了。
靜態連結注意事項
1)程式動態連結到MFC庫情況下,靜態連結到XTP
2)程式動態靜態到MFC庫情況下,靜態連結到XTP
不論哪種情況,配置_XTP_STATICLINK都可以使能靜態連結,靜態連結時記得在你工程裡的rc2檔案中,包含如下語句,否則調用XTP中的資源時會
發生異常。
#include <XTToolkitPro.rc>
由於toolkit安裝時,編譯產生相應的lib非常慢,我當時只產生了靜態庫。分別是:
ToolkitPro1321vc80S.lib
ToolkitPro1321vc80SD.lib
ToolkitPro1321vc80SU.lib
ToolkitPro1321vc80SUD.lib
其中,S表示static, 後面的D表示debug, U表示unicode,
//編譯的時候,是有3個選項的
a) As DLL
b) As Static Library, for using MFC as DLL
c) As Static Library, for using MFS as static library.
//我選擇了b,所以,產生以上libs:S.lib, SD.lib, SU.lib, SUD.lib. //這裡是錯的,應該是選擇C產生的
//如果選擇了c),則會產生DS.lib, DSD.lib, DSU.lib, DSUD.lib //前面的D表示using mfc as dll //應該是選擇B產生的
//如果選擇了a),則會產生" ".dll, D.dll, U.dll, UD.dll.
假定xtreme toolkit安裝在:C:\Program Files下。
則比如會有如下目錄存在:C:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v13.2.1\Source
然後在項目屬性中需要修改如下設定:
a) c/c++ | 常規 | 附加元件封裝含目錄,增加“C:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v13.2.1\Source”
b) 連結器 | 常規 | 附加庫目錄:增加“C:Program Files\Codejock Software\MFC\Xtreme ToolkitPro v13.2.1\Lib\vc80”
c) 連結器 | 輸入 | 忽略特定庫,增加“libcd.lib”。如果遵照文檔,還需要忽略更多。我這就先填這個了。
d) 資源 | 常規 | 附加元件封裝含目錄,增加“C:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v13.2.1\Source”
然後,在代碼中需要進行如下修改:
a) 在stdafx.h末尾增加 #include "XTToolkitPro.h"
b) 在xx.rc2末尾增加 #include "XTToolkitPro.rc"
c) 然後就是在mainfrm.h中的聲明中加入繼承關係:
class CMainFrame : public CXTPMDIFrameWnd
然後就可以順利編譯通過了。
注意:千萬不要將xtreme toolkit的任何東西加入到項目中。我之前就把XTPResource.h, XTToolkitPro.h, XTToolkitPro.rc加入到項目中,然
後報cvt1100:重複資源,type:BITMAP,...錯誤。
動態編譯註意事項
其實,和靜態編譯很像。靜態編譯可以參考我之前的“xtreme toolkit靜態編譯註意事項 ”只不過需要xtreme toolkit的.dll拷貝到system32下
。或者放在exe的輸出目錄下。