資料介紹
軟件簡介
Windows Implementation Libraries (WIL) 是一個只包含頭文件的 C++ 庫,可以讓 Windows 開發(fā)者通過易讀的類型安全的 C++ 接口來實現(xiàn)通用的 Windows 編碼模式。
主要包括:
-
include/wil/resource.h
?(documentation): Smart pointers and auto-releasing resource wrappers to let you manage Windows API HANDLEs, HWNDs, and other resources and resource handles with?RAII?semantics. -
include/wil/win32_helpers.h
: Wrappers for API functions that save you the work of manually specifying buffer sizes, calling a function twice to get the needed buffer size and then allocate and pass the right-size buffer, casting or converting between types, and so on. -
include/wil/registry.h
: Registry watchers that can call a lambda function or callback you provide whenever a certain tree within the Windows registry changes. -
include/wil/result.h
?(documentation): Preprocessor macros to help you check for errors from Windows API functions, in many of the myriad ways those errors are reported, and surface them as error codes or C++ exceptions in your code.
WIL can be used by C++ code that uses C++ exceptions as well as code that uses returned error codes to report errors. All of WIL can be used from user-space Windows code, and some (such as the RAII resource wrappers) can even be used in kernel mode.
Consuming WIL via NuGet
You can consume WIL via a NuGet package. To do so, follow the instructions on?nuget.org. This package includes the header files under the?include?directory as well as a?.targets?file
Building/Testing
To get started testing WIL, first make sure that you have a recent version of Visual Studio installed. If you are doing any non-trivial work, also be sure to have a recent version of Clang installed. Once everything is installed, open a VS native command window (e.g. "x64 Native Tools Command Prompt for VS 2019"). From here, you can either invoke CMake directly:
C:\wil> mkdir build C:\wil> cd build C:\wil\build> cmake -G Ninja ..
Or through one of the scripts in the?scripts?directory:
C:\wil> scripts\init.cmd -c clang -g ninja -b debug
If you initialized using Ninja as the generator, you can build the tests like so:
C:\wil\build\clang64debug> ninja
Or, if you want to only build a single test (e.g. for improved compile times):
C:\wil\build\clang64debug> ninja witest.noexcept
If you initialized using MSBuild as the generator, there will be a?.sln
?file in the root of the build directory. You can either open the solution in Visual Studio or invoke MSBuild directly to build.
The output is a number of test executables. If you used the initialization script(s) mentioned above, or if you followed the same directory naming convention of those scripts, you can use the?runtests.cmd?script, which will execute any test executables that have been built, erroring out - and preserving the exit code - if any test fails. Note that MSBuild will modify the output directories, so this script is only compatible with using Ninja as the generator. If you are at the tail end of of a change, you can execute the following to get a wide range of coverage:
C:\wil> scripts\init_all.cmd C:\wil> scripts\build_all.cmd C:\wil> scripts\runtests.cmd
Note that this will only test for the architecture that corresponds to the command window you opened. You will want to repeat this process for the other architecture (e.g. by using the "x86 Native Tools Command Prompt for VS 2019")
- 基于Labview的調(diào)用windows程序源碼分享 96次下載
- Windows使用DWriteCore實現(xiàn)呈現(xiàn)文本功能 7次下載
- AN1246中文手冊之如何在Microchip圖形庫中創(chuàng)建控件
- 如何在windows環(huán)境下用Sourcery CodeBench編譯基于am3359的u-boot概述 8次下載
- 在Windows CE下實現(xiàn)串口通信 6次下載
- 基于Windows CENET的串行通信的實現(xiàn) 5次下載
- 面向WINDOWS開發(fā)的基本實現(xiàn) 16次下載
- 基于Windows CE的GPS串行通信的實現(xiàn)
- 基于Windows CE的數(shù)控軟件開發(fā)與實現(xiàn)
- Windows CE 數(shù)據(jù)庫程序開發(fā)
- 嵌入式移動數(shù)據(jù)庫SQL Server for Windows
- 利用TCP/IP實現(xiàn)Windows與Vxworks的通信
- 基于Windows CE&Pocket PC的數(shù)據(jù)庫應(yīng)用程序
- Windows Live軟件下載 軟件包 2009版 (含M 0次下載
- windows player 11
- 在單片機上實現(xiàn)動態(tài)加載功能的函數(shù)庫介紹 1172次閱讀
- Vitis加速庫:廣泛且性能優(yōu)化的開源庫 541次閱讀
- STM32基于HAL庫實現(xiàn)微秒延時 4366次閱讀
- 調(diào)用HLS的FFT庫實現(xiàn)N點FFT 934次閱讀
- Linux中的靜態(tài)庫和共享庫 850次閱讀
- 100行Python實現(xiàn)人體膚色檢測 606次閱讀
- 基于STM32調(diào)用固件庫實現(xiàn)點燈 749次閱讀
- Linux或Windows上實現(xiàn)端口映射 761次閱讀
- 鴻蒙開發(fā)中庫的調(diào)用 1601次閱讀
- HAL庫無法實現(xiàn)UART的DMA傳輸真是這樣嗎? 2358次閱讀
- 開源數(shù)據(jù)庫管理工具Beekeeper Studio簡介 3498次閱讀
- 將函數(shù)封裝成庫使用的實現(xiàn)方法 5311次閱讀
- 剛剛開源的最快人臉檢測庫:libfacedetection 1.2w次閱讀
- Python+微信一鍵連接實現(xiàn)遠程管理Windows10操作系統(tǒng)的開機和關(guān)機 6116次閱讀
- STM32標準庫改為HAL庫的程序實現(xiàn) 3.4w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多