2013-10-03 75 views
5

似乎Win32 API(用於本地Windows應用程序的 C API)正變得越來越被更爲現代的框架和工具包(包括Microsoft自己的WPF和Qt)所取代。Win32 API獨有的功能?

如果編程語言不是一個問題 - 如果您未設置託管環境或函數式編程風格等 - Win32 API是否將任何內容帶入表中? 是否有任何功能可以用Win32 API實現,而WPF或其他框架不提供這些功能?

我知道可以將Win32代碼混合到WPF /託管軟件中,因此不必選擇其中一個。但是在高級語言/框架中開發程序時,需要打破Win32 API的一些示例?

回答

3

當然可以。

所有的框架都是用Win32 API編寫的。框架覆蓋了程序員需要做的80-95%,但是如果你需要對某些東西進行真正的低級別控制,則需要下降到底層的Win32 API。一些示例將是:

  1. 文本上渲染(經由DirectWrite)精確控制,採用在語音識別
  2. 詳細控制SAPI(字面上有幾十個接口不通過System.Speech曝光),
  3. 低(即任何不與HTTP相關的),
  4. 實際上任何東西audio related,如果你對性能感興趣。
+0

整潔的描述+1 – fayyazkl

2

另一個更具體的例子是「windows hooks」。

我需要在某些時候掛鉤一些套接字程序,唯一可能的方式是windows api。

爲了詳細說明,我希望接收在不同的監聽套接字上接收的所有通信。這樣做需要hooks

2

......不要忘記像「WinUSB」和調試功能(編寫充當調試器的程序)的直接硬件訪問。

+0

是的另一個重要的+1 +1 – fayyazkl