1个不稳定版本

0.1.0 2020年4月2日

#745调试

Download history • Rust 包仓库 309/week @ 2024-03-14 • Rust 包仓库 335/week @ 2024-03-21 • Rust 包仓库 224/week @ 2024-03-28 • Rust 包仓库 273/week @ 2024-04-04 • Rust 包仓库 294/week @ 2024-04-11 • Rust 包仓库 365/week @ 2024-04-18 • Rust 包仓库 350/week @ 2024-04-25 • Rust 包仓库 453/week @ 2024-05-02 • Rust 包仓库 271/week @ 2024-05-09 • Rust 包仓库 421/week @ 2024-05-16 • Rust 包仓库 209/week @ 2024-05-23 • Rust 包仓库 263/week @ 2024-05-30 • Rust 包仓库 223/week @ 2024-06-06 • Rust 包仓库 318/week @ 2024-06-13 • Rust 包仓库 177/week @ 2024-06-20 • Rust 包仓库 142/week @ 2024-06-27 • Rust 包仓库

894 每月下载次数

MIT/Apache

8KB
72

用于Windows调试器的日志记录器。

Windows允许应用程序直接向调试器输出字符串。在其他日志形式不可用的情况下,这非常有用。例如,对于GUI应用程序,stderr不可用。

Windows提供了OutputDebugString入口点,允许应用程序打印调试字符串。在内部,OutputDebugString通过引发SEH异常来实现,调试器捕获并处理这个异常。

在调试器下运行时,引发异常有显著的代价,因为调试器会暂停目标进程中的所有线程。因此,你应该避免在高输出率的情况下使用此日志记录器,因为这样做会减慢你的应用程序。

类似于许多Windows入口点,OutputDebugString实际上是两个入口点:OutputDebugStringA(多字节编码)和OutputDebugStringW(UTF-16)。在大多数情况下,*A版本是通过一个“thunk”实现的,该“thunk”将其参数转换为UTF-16,然后调用*W版本。然而,OutputDebugStringA是少数几个反其道而行之的入口点之一。

此crate可以在非Windows平台上编译和使用,但它不执行任何操作。这是为了最小化对依赖于此crate的代码的影响。

依赖项

~88KB