用什麼技術開發一個無依賴的windows桌面開發最為高效?

在windows,主要是win7上開發一個GUI程序。最優的是一個單獨exe,不需要安裝其他任何環境就能運行,類似於procexe.exe。

這種情況下,使用什麼語言,什麼庫來開發最為高效?


不可能無依賴的,你的程序肯定需要依賴windows系統的dll,比如kernel32.dll,user32.dll

你不如去了解一下相關的東西,然後重新把問題說清楚了,到底不要依賴哪些東西

另外是windows不是window


看了這些答案,我覺得我還是取消關注編程話題吧


qt,靜態編譯,完畢。

缺點就是體積會比較大。


程序不可能無依賴,只能做到系統原生支持,這是前提。

小明是你的用戶,這人非常無趣,電腦是win7 sp1,安裝好了就沒裝其他的程序,他不聊QQ,用IE上網,用系統自帶的輸入法,不肝steam——只玩系統自帶的小遊戲。這是一個光禿禿的windows。

QT在win7中不用安裝任何類庫,但如果要單獨的exe則需要打包或全部項目靜態編譯。

VC可以使用windows自帶的MFC庫,不用安裝第三方類庫。但VC版本與系統自帶庫的可能不一樣,無法運行,(而且由於「依賴的依賴」,靜態編譯選項也很難解決這個問題——這裡說錯了,經過實際測試,VC15啟用靜態編譯後可以是可以運行的,VC14據樓下同學說也OK)。win7自帶的MFC版本記不清了,不過印象里VC10(VS2010)是一定可以的。

.net的話,3.5以下都是可以的。

順便說,你舉的例子如果是說procexp的話。它最新的版本可能用到了Vista以上才有的API,更早的windows系統並不支持,而且它應該是用VC12(VS2013)寫的,在原生win7上運行不了。


根據題目猜測題主大概率編程經驗並不豐富,需要實現的也並不是複雜程序,那麼我推薦python + py2exe


講真哈,自己的UI庫

不敢說資深,但你這個需求我已經滿足客戶太多年了,有一點經驗。


用HTML配上js,不是挺好的?硬要說依賴,那就依賴瀏覽器吧。再不濟,人肉也能解析。


Delphi


如果只關心結果不關心文件大小,就用MFC,開啟靜態編譯就可以了。


試試 AutoIt v3。語言上是類 BASIC 的風格。如果沒有使用第三方的依賴庫,單純使用它內置的函數和功能(AutoIt 已經內置了相當多實用的函數以及一堆的 WinAPI 封裝),這樣生成的 exe 僅僅是單文件,而且體積也比較小。即使是製作 GUI 程序,仍然不需要外部依賴,因為它已經內置了一系列與 GUI 有關的函數。

當然有點美中不足的是,容易被殺毒軟體誤報。


工具electron 運行環境nodeJs

用html css搭界面

js寫邏輯


貌似只有c/c++能滿足要求,用啥編譯器隨你喜歡。系統里沒有的動態庫,就用靜態庫版本,妥妥的。


上月剛做了個類似要求的小程序,java/.net/python之類首先出局,VC要redist也不行,後來想起lcc-win。寫完dumpbin看沒有特殊依賴,放到乾淨XP上運行正常。


你會啥就用啥啊。。。


win7自帶net3.5,所以winform和wpf都可以。

你用qt也行,用打包工具把依賴dll打包一下也挺方便的。


Win32 MFC 唄. 不過界面即就不要指望有多花哨了. 頂多能看.

--------------------

哦還有一個. VB6.

C# (WinForms) + .NET Framework 3.5 也是沒問題的. Windows 7 和以上默認自帶 .Net framework 3.5, 相當於什麼依賴都不用裝.


用delphi5比較合適

簡單

從WIN98到WIN10都可以一個EXE搞定


按你的描述感覺 Delphi很適合你。

或者

C++ vs2008

C# .net3.5

不行你自己寫個殼嘛。把依賴的DLL打包。運行時釋放內存載入。


幾乎90% 以上的框架都能 全量發布成一個exe,不過按題主的意思 winform .net3.5以下最適合題主

win7自帶.net3.5。winform的原生UI組件也完全能支撐小型工具的界面要求。因為只依賴.net所以最主要發布後體積比較小

最後宇宙最強ide vs 分分種就能做出來


由於windows 7自帶.Net Framework 3.5,所以最高效的方法是,創建一個基於.Net Framewrok 3.5的Windows Forms或者WPF項目。


你說開發一個exe程序?

來,你先去百度一下exe的含義再來重新問。


推薦閱讀:

Visual Studio 是不是坑了一代人?為什麼?
Visual Studio 為什麼不提供整體卸載功能?
Visual Studio Community 2013在編譯和運行時與Visual Studio Professional 2013有什麼區別?
VS2015編寫的C++程序發布到全新的Win7系統需要什麼條件?

TAG:QtC開發框架 | C | C# | MicrosoftVisualStudio | 電腦軟體 |