2010-07-30 74 views
3

任何人都可以告訴我如何在C中創建一個基本的可用Windows應用程序(我對C++有一點點了解)?Windows應用程序C

+3

我覺得值得說明的是,如果你正在談論用C開發一個窗口化的應用程序,那麼你將爲自己打開一個整個世界。如果你這樣做是因爲你知道C並且對加速C#或Java的學習曲線感到警惕,那麼你擔心錯誤的事情。您將在C#*中更快地開發您的應用程序,包括C#/ .Net/OOP學習曲線*,而不是您在C中的有用Windows應用程序。我意識到這個建議可能並不適用於您,但感覺這說得更好。 – 2010-07-30 15:36:43

+1

P.S.當火箭科學家和腦外科醫生想要一個比喻來代替「至少它不是Rocket Science/Brian Surgery」時,他們會說「至少它不是用C開發Windows應用程序」。 – 2010-07-30 15:45:03

+0

看到這個鏈接:http://stackoverflow.com/questions/3354692/windows-programing-in-c/3354967#3354967 – lsalamon 2010-07-30 15:47:54

回答

6

Get Petzold的Programming Windows book;它是一個經典的代碼,涵蓋了其核心C根的Win32開發。

+0

Downvoted?真? – 2010-07-30 15:47:00

+0

這很難相信,因爲他的書或多或少是我所知道的主題上的標準文本。 – dsolimano 2010-07-30 16:52:36

+1

我注意到有很多非常好的答案獲得了未註釋的downvotes,我開始懷疑有無數懵懂的歹徒在這些頁面上游蕩。 – 2010-07-30 23:34:57

1
#include <stdlib.h> 
int main() 
{ 
    printf("Hello World!"); 
} 

將作爲Windows應用程序編譯和運行。如果你想做點什麼特定,那麼請讓我們知道。沒有什麼能夠使Windows應用程序與其他任何應用程序不同。

+0

除了可能是一個窗口:) – 2010-07-30 15:19:12

+1

@ 0A0D:你可以是一個Windows應用程序,而不是實際創建一個窗口。 – 2010-07-30 16:39:07

+0

從技術上講,這不是一項服務嗎?即使一個控制檯應用程序有一個「窗口」 – 2010-07-30 17:40:09

1

也許在this link視頻將有所幫助。如果沒有,MSDN上可用的其他資源將啓動您。

除此之外「如何編寫Windows程序」只是一個廣泛和大的話題,在這裏真正解決。

1

Raymond Chen的scratch program是一個功能最低的白色盒子,是他發佈的其他一些文章的基礎。

您可以在Visual Studio中進行編譯。在VS2005中,我創建了一個新的空C++項目,並將comctl32.lib添加到Configuration->Linker->Input->Additional Dependencies

3

最起碼的窗戶C程序是這樣的: -

#include <windows.h> 
#include "resource.h" 

int CALLBACK WinMain(HINSTANCE hApp, HINSTANCE, LPSTR pszCmdLine, int nCmdShow) 
{ 
    return DialogBoxParam(hApp,MAKEINTRESOURCE(IDD_DIALOG1),NULL,NULL,NULL); 
} 

它假設你已經使用的資源編輯器創建一個名爲IDD_DIALOG1對話框資源。該對話框將顯示,並在關閉按鈕被點擊時關閉。

+1

+1。但是,這個怎麼樣: '#包括 INT主要(){ MessageBox的 (NULL, 「Hidey何」, 「消息」,MB_OK); return 0; } ' :-) – 2010-07-30 23:39:48

+1

這真的很簡單。從對話框資源開始的一點是,您可以通過添加對話框過程和處理消息來實際增長程序。 – 2010-07-31 06:59:32