Windows API Code Pack 过去、现在与将来

     今天一早看到Yochay Kiriaty 关于Windows API Code Pack 的一篇文章,主要是对于Windows API Code Pack 历史与现状的一些介绍,同时也提到未来将要新增的功能。关于Windows API Code Pack 对Windows 7 应用程序的开发之前我也写过一些文章,主要涉及Taskbar、Thumbnail、Jump List、Overlay Icon、Progress Bar 方面的内容。

     其实Windows API Code Pack 的功能远远大于这些,下面是Windows API Code Pack 可以实现的所有功能,可见它的确是一个强大的开发工具。那么在未来的开发过程中The Windows API Code Pack Team 也希望听到广大开发者对于这款开发工具的意见或建议,以便更好的完善Windows API Code Pack 各项功能。

>> Windows 7 Taskbar

    ・ Jump Lists, Icon Overlay, Progress Bar, Tabbed Thumbnails, and Thumbnail Toolbars

>> Windows Shell

     ・ Windows 7 Libraries
     ・ Windows Shell Search API support
     ・ Explorer Browser Control
     ・ A hierarchy of Shell Namespace entities
     ・ Windows Shell property system
     ・ Drag and Drop for Shell Objects
     ・ Windows Vista and Windows 7 Common File Dialogs, including custom controls
     ・ Known Folders and non-file system containers

>> DirectX

     ・ Direct3D 11.0, Direct3D 10.1/10.0, DXGI 1.0/1.1, Direct2D 1.0, DirectWrite, Windows Imaging Component (WIC) APIs

>> Windows Vista and Windows 7 Task Dialogs

>> Sensor Platform APIs

     ・ Extended Linguistic Services APIs
     ・ Power Management APIs
     ・ Application Restart and Recovery APIs
     ・ Network List Manager APIs
     ・ Command Link control and System defined Shell icons

     下文转自Yochay Kiriaty 原文,对Windows API Code Pack 感兴趣的朋友可以到文中提供的链接地址发表自己的意见。

  • Some Background

    You may think of the Windows API Code Pack as the closest thing to an “official” managed API for Windows on top of the .NET Framework. The Windows API Code Pack is a free, managed source code library provided by Microsoft as-is. You should consider this library as if you wrote that code. It is a great starting point and provides a really solid solution for managed code developers who create Windows application and looking to light up their applications. It covers a lot of the new Windows 7 features as well as some more fundamental core features from the Windows Vista timeframe.

    The Windows API Code Pack's former name was Windows Vista Bridge, or simply “The Bridge”. We began developing the Windows Vista Bridge after Windows Vista and the .NET Framework 3.0 were released. Realizing that .NET Framework 3.0 was missing some Windows Shell and other Win32 APIs, which made it harder for managed code developers to use the full power of Windows. The team set out to create a “bridge” that would help developers to cross this gap and allow managed code developers to access some of the more useful features of Windows, such as Search, Restart and Recovery, Glass, and Power Management. The outcome of this process was the Windows Vista Bridge Sample Library.

    In the process of updating Windows Vista Bridge, we realized that the old name doesn't fit the new Library. Because this library is no longer tied to a specific Windows release, we decided to change the name to the rather unwieldy but descriptive Windows API Code Pack for Microsoft .NET Framework. Unlike Vista Bridge that shipped after Vista was released, the Alpha version (version 0.8) of the Windows API Code Pack was released on April 20, 2009, six months before Windows 7 shipped. Releasing an early version allowed us to solicit developers’ feedback, update our feature list, and discover more bugs. It also allowed us to actually tell a managed code stories for Windows 7, since back then the .NET Framework (3.5) didn’t support any Windows 7 features.

    Windows API Code Pack Version 1.0.1

    A year has passed since the initial 0.8 Alpha release. Since then, we have had 3 more releases. The current version, 1.0.1, released November 18, 2009, includes a great deal of useful features that any managed code developer who is targeting Windows can use, including complete taskbar integration, extensive improvements to Windows Shell and libraries, DirectX 11, Sensor, and many more features.

    There have been more than 67,000 direct downloads of the Windows API Code Pack since its release, and about the same number of downloads for other projects, such as theWindows 7 Training Kit for Developers, Flashcards.Show, Images.Show. These projects either use the Windows API Code Pack DLLs or include the Windows API Code Pack code. I guess this is where I need to acknowledge all of those who downloaded the Windows API Code Pack �C thank you!

    Windows API Code Pack Version 1.X

    We didn’t stop working on the Windows API Code Pack! In the next few weeks/months we’ll release another version that will include bug fixing, major code cleanup and standardization, and few new features.

    The team working on the Code Pack gave the existing code base a major facelift. Following the Microsoft development process, the original code was reviewed against a number of criteria, including Visual Studio FxCop analysis, updated naming conventions, improved performance, and upgrades, resulting in a much cleaner and more cohesive baseline. This baseline code will serve us internally for future releases, and I know developers will appreciate it as well.

    We also added automatic testing for all the major projects (DLLs). Adding automatic testing to the Windows API Code Pack streamlines our internal development process and alerts you if any of your Code Pack customizations breaks anything along the way. The testing framework we use for the Windows API Code Pack is called xUnit. We chose xUnit over Visual Studio (VS) unit testing because unit testing is not part of the free express version of VS, and we didn’t want to limit our target audience.

    While these code changes do not result in many new features, they do result in a much more robust and easy to maintain and debug code base upon which we can build going forward. We are working on a small set of new features for our next release, which will ship in few weeks.

    But fear not, this is where you come into the picture. If you ever wanted to add a feature to the Code Pack, were looking for some specific Win32 API to be wrapped, or just wanted to pass us some feedback, this is your opportunity. Please send us your feedback or file a bug using the Discussions or Issue Tracker for the Windows API Code Pack.

    We are especially interested in improving support for the Windows Shell, specifically in the areas of Shell integration, support for file handlers and properties, libraries, and search and indexing. We are also looking into adding social and web APIs related to Windows, as well as some fundamentals around Windows Services and Task Scheduling and Power Management. Again, if you have any additional ideas or feedback, we are listening.

  • 你可能感兴趣的:(Windows API Code Pack 过去、现在与将来)