2个版本
使用旧Rust 2015
0.1.1 | 2023年5月4日 |
---|---|
0.1.0 | 2023年1月19日 |
#264 in 构建工具
119,395 每月下载量
在 73 个crate中使用 (3 直接使用)
30KB
329 行
tauri-winres
一个简单的库,用于简化向可执行文件添加资源(元信息和图标)。
注意:tauri-winres
是 winres 的分支,它不再支持 Rust 1.61 或更高版本,并且已被 放弃维护。这个分支完全用 embed-resource crate 替换了资源编译器实现,以更好地支持跨平台编译。这个分支主要是为了在 Tauri 中使用而更新和修改的。对于更通用目的的分支,我们建议您也查看 winresource。
工具包
在开始之前,您需要安装适当的工具。
rc.exe
来自 Windows SDKwindres.exe
和ar.exe
来自 minGW64
如果您使用的是与MSVC ABI兼容的Rust,则需要Windows SDK,而对于GNU ABI,您需要minGW64。
Windows SDK通常可以在注册表中找到,但minGW64必须在$PATH环境变量中。
使用tauri-winres
首先,您需要将构建脚本添加到您的crate中(build.rs
),方法是在您的crate的Cargo.toml
文件中添加它
[package]
#...
build = "build.rs"
[build-dependencies]
tauri-winres = "0.1"
接下来,您需要编写一个构建脚本。以下是一个简短的示例。
// build.rs
fn main() {
if std::env::var("CARGO_CFG_TARGET_OS").unwrap() == "windows" {
let mut res = tauri_winres::WindowsResource::new();
res.set_icon("test.ico");
res.compile().unwrap();
}
}
就是这样。文件 test.ico
应该位于与 build.rs
相同的目录中。元信息(如程序版本和描述)来自 Cargo.toml
的 [package]
部分。
请注意,在非 Windows 平台上使用此 crate 的支持是实验性的。建议仅在 Windows 主机上使用 tauri-winres
,通过使用 cfg
作为指令来避免在 Unix 平台上构建 tauri-winres
。
[package]
#...
build = "build.rs"
[target.'cfg(windows)'.build-dependencies]
tauri-winres = "0.1"
接下来,您需要编写一个构建脚本。以下是一个简短的示例。
// build.rs
#[cfg(windows)]
fn main() {
let mut res = tauri_winres::WindowsResource::new();
res.set_icon("test.ico");
res.compile().unwrap();
}
#[cfg(unix)]
fn main() {}
附加选项
为了增加便利性,tauri-winres
会解析 Cargo.toml
中的 package.metadata.tauri-winres
部分
[package.metadata.tauri-winres]
OriginalFilename = "PROGRAM.EXE"
LegalCopyright = "Copyright © 2016"
#...
此部分可能包含任意字符串键值对,这些键值对将包含在可执行文件/库文件的版本信息部分中。
以下键具有特殊含义,并将显示在 Windows 资源管理器的文件属性中
FileDescription
、ProductName
、ProductVersion
、OriginalFilename
和 LegalCopyright
有关可执行文件/库版本信息部分的更多详细信息,请参阅 MSDN。
关于此项目
原始作者和维护者使用此 crate 进行他们的个人项目,尽管在该环境中已进行过测试,但我们不知道其行为是否在所有地方都相同。
简而言之,我们非常依赖您的错误报告和功能建议来改进此 crate。
依赖关系
~0.7–11MB
~76K SLoC