似乎Win32 API(本机Windows应用程序的 C API)越来越被更现代的框架和工具包所取代,包括微软自己的WPF和Qt。
如果编程语言不是一个问题 - 如果你没有设置在托管环境或函数式编程风格等 - Win32 API是否会带来任何表格? 是否可以使用WPF或其他框架无法使用的Win32 API实现任何功能?
我知道可以将Win32代码混合到WPF /托管软件中,因此不必选择其中一个。但是,在更高级语言/框架中开发程序时需要打破Win32 API的一些例子是什么?
答案 0 :(得分:3)
另一个更具体的例子是“windows hooks”。
我需要在某些时候挂钩一些套接字程序,唯一可行的方法是windows api。
详细说明我希望接收在另一个侦听套接字上收到的所有通信。这样做需要hooks
答案 1 :(得分:2)
当然可以。
所有框架都是根据Win32 API编写的。这些框架涵盖了80-95%的程序员需要做的事情,但是如果你需要对某些东西进行真正的低级控制,那么你需要使用底层的Win32 API。一些例子是:
答案 2 :(得分:2)
...不要忘记直接硬件访问,例如" WinUSB"和调试功能(编写充当调试器的程序)。
答案 3 :(得分:0)
目前,Win32 API几乎无法被任何框架所接管。 如果真是这样,Microsoft不会更新大多数API。而是添加和更新了许多新接口。
还有Qt之类的框架,但是,除非您需要创建的琐碎小事,否则最终将使用该API,特别是对于新的图形库,音频,视频,usb,功能区,套接字,网络,COM自动化,生物识别,加密,数字签名,安全性,脚本等。
实际上,大多数库已经过时了,虽然您可以 创建一个主要依赖于工作线程而不是依赖于接口的应用程序,但是今天构建一个美观,现代且有用的应用程序肯定需要API 。因此,投资仅覆盖应用程序最小部分的框架是不值得学习的,这些框架主要针对的是真正新手和没有经验的Windows开发人员。