目錄 | 1概述 |
---|
高版本VC++包括了SDK所有的頭文件、幫助、示例和工具,不需要再安裝SDK,低版本如VC++5.0則需要安裝SDK。從windows 98開始,windows SDK叫Platform SDK(http://www.microsoft.com/downloads/details.aspx?FamilyId=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en),包含最新的windows API函數(shù)的有關(guān)聲明、例子。
用VC編寫windows程序有兩種方式:windows c方式(SDK)和C++方式(對SDK函數(shù)進行包裝,如VC中的MFC、BCB中的VCL)。SDK編程就是直接用windows API進行編程。API由上千個API函數(shù)組成(win95中有兩千多個),而MFC是API的封裝,結(jié)合面向?qū)ο蟮睦^承、多態(tài)組成一個個類,共有一百多個類組成。
上面只是說了一個 SDK 大概的概念而已,要理解SDK 不得不引入 API、動態(tài)鏈接庫、中斷矢量表找到他們的入口。
DLL即 Dynamic Link Library(動態(tài)鏈接庫)。我們經(jīng)常會看到一些 .dll 格式的文件,這些文件就是動態(tài)鏈接庫文件,其實也是一種可執(zhí)行文件格式。跟 .exe 文件不同的是,.dll 文件不能直接執(zhí)行,他們通常由 .exe 在執(zhí)行時裝入,內(nèi)含有一些資源以及可執(zhí)行代碼等。其實 Windows 的三大模塊就是以 DLL 的形式提供的(Kernel32.dll,User32.dll,GDI32.dll),里面就含有了 API 函數(shù)的執(zhí)行代碼。為了使用 DLL 中的 API 函數(shù),我們必須要有 API 函數(shù)的聲明(.H)和其導(dǎo)入庫(.LIB)。導(dǎo)入庫可以理解為是為了在 DLL 中找到 API 的入口點而使用的。
所以,為了使用 API 函數(shù),我們就要有跟 API 所對應(yīng)的 .H 和 .LIB 文件,而 SDK 正是提供了一整套開發(fā) Windows 應(yīng)用程序所需的相關(guān)文件、范例和工具的"工具包"。
由于 SDK 包含了使用 API 的必需資料,所以人們也常把僅使用 API 來編寫 Windows 應(yīng)用程序的開發(fā)方式叫做"SDK 編程"。而 API 和 SDK 是開發(fā) Windows 應(yīng)用程序所必需的東西,所以其它編程框架和類庫都是建立在它們之上的,比如 VCL 和 MFC,雖然他們比起"SDK 編程"來有著更高的抽象度,但這絲毫不妨礙它們在需要的時候隨時直接調(diào)用 API 函數(shù)。
時下學計算機的大多想學編程,且大部分都是在Windows下工作的,而目前學得最熱門的是VC,大多數(shù)人一開始就開始學習VC,VC是以C++為語言基礎(chǔ)的開發(fā)工具,而C++是C語言的擴充,故要學好VC最好是先學好C和C++。
用VC編寫Windows程序有兩種:1. Windows c方式(SDK),2. C++方式:即對SDK函數(shù)進行包裝,如VC的MFC,BCB的VCL等。SDK編程就是直接調(diào)用Windows的API進行編程,平時人們常說"用SDK寫程序"就是指用Windows的API函數(shù)來寫程序,API由上千個API函數(shù)組成(Win95的API有兩千多個)。而MFC是API的封閉,結(jié)合面向?qū)ο蟪绦蛟O(shè)計的繼承性和
我們?nèi)匀挥肰C6的IDE(集成開發(fā)環(huán)境)來編寫SDK程序,啟動VC6后選擇File菜單的New...選項,在出現(xiàn)的New對話框的Projects標簽內(nèi)選擇Win32 Application,然后在Projects Name指定項目的名字,在Location中指定路徑后按OK按鈕,在出現(xiàn)的對話框中,如果你想要用C語言來寫程序可以選擇An emtpy project,如果你想創(chuàng)建一個帶有WinMain入口函數(shù)和普通參數(shù)的設(shè)定的項目,可以選擇A simple Win32 application,如果您想創(chuàng)建一個簡單典型的"Hello World!"Win32SDK application應(yīng)用程序,可以選擇A typical "Hello World!" application。確定項目類型后按Finish完成。
在VC6環(huán)境下,你依然可以使用資源編輯器和ClassWizar等工具完成程序的編寫。用SDK編寫程序關(guān)鍵是能夠了解程序的來龍去脈。如果不了解,當然那樣效率會很低,不比VB、PB那么快,任何東西都是有得有失,如你熟悉用SDK寫程序后,對MFC會比較容易上手的,關(guān)鍵要熟悉C++的三大特性。