目前我們所有的GUI組件都是用MFC編寫的。我們的編譯環境是:從MFC過渡到QT
VC 6
的Windows XP
我不知道是否:
1)我們可以替換使用Qt的所有MFC組件,不改變構建環境?
2)Qt可以像VC6一樣使用其他庫嗎?
你的答案會幫助我入門,同時我已經安裝了Qt 4並且正在嘗試構建一些示例。
目前我們所有的GUI組件都是用MFC編寫的。我們的編譯環境是:從MFC過渡到QT
VC 6
的Windows XP
我不知道是否:
1)我們可以替換使用Qt的所有MFC組件,不改變構建環境?
2)Qt可以像VC6一樣使用其他庫嗎?
你的答案會幫助我入門,同時我已經安裝了Qt 4並且正在嘗試構建一些示例。
1)如果我們可以用QT替換所有MFC組件,而不改變構建環境?
是的,你甚至可以得到一個MFC/QT遷移框架CF qt.nokia.com/products/appdev/add-on-products/catalog/4/Windows/qtwinmigrate/
2)將Qt的用VC6工作的任何其他圖書館嗎?
VC6超過10歲!
Qt支持VC6,直到4.5版 的下一個版本(4.6)將下降VC6支持CF qt.nokia.com/doc/4.6-snapshot/qt4-6-intro.html#performance-optimizations
哎呀VC6支持Qt,我已經與win9x支持混淆。 目前還不清楚哪個版本的Qt仍然支持VC6。我猜最新的是Qt-4.4 cf http://doc.trolltech.com/4.4/supported-platforms.html Qt 4.5特別將VC6標記爲不受支持:http://doc.trolltech.com/4.5/supported- platforms.html –
你可能不應該在Qt 4.5中使用VC6。 (see doc)
除此之外:如果您的項目與Qt編譯,您可以輕鬆*切換到Qt組件。 Qt無論如何都使用自己的組件,所以沒有其他的依賴關係。
但是,要設置Qt環境,除非不使用QObject
s,否則可能需要對構建系統進行一些更改。 (想想moc預處理器。)
*:很容易就能夠開始使用Qt組件。實際將MFC組件遷移到Qt的工作量是我不知道的。
將MFC更換爲QT需要做大量的工作。首先你應該考慮你是否需要這個。其次,Qt可以與Visual Studio集成。
試圖端口一個客戶的MFC應用程序中的Qt當我得知是非常有用的東西。
我做了一個lot的重構。那根本不會嚇到我。但是,我通常是增量改變的事情。這有很大的不同。
我剛開始的Qt在LGPL版本發佈後移植MFC應用程序中的Qt,但「qtwinmigrate」的LGPL發佈之前(在ftp://ftp.qt.nokia.com/qt/solutions/lgpl/得到它)。當時,我認爲Qt會堅持MFC遷移的東西作爲商業授權的激勵。
在編譯項目之前,我不得不轉換大量的文件。一旦基礎知識啓動並運行,我會慢慢重新添加對話框,直到功能與原始版本匹配。這是難得多比能夠保持現有的MFC應用程序按原樣運行並慢慢替換對話框。
所以,重點是...... 使用QTWINMIGRATE!
哦,是啊...並且不要使用VC6。升級到更新的東西。
替代方案 - 考慮到您的舊編譯器 - 將首先升級到vs2008/mfc - 如果可移植性不是問題。 –
我強烈支持Anders Karlsson的建議。 VC++ 6是古老而獨特的。你會發現越來越少的第三方軟件可以使用它。 VC++ 2008幾乎完全符合標準,所以它會變得更好。 –
thx安德斯,大衛..我認爲你的建議..我會提出相同的團隊:) – Satbir