3个版本 (重大更改)
0.3.3 | 2024年7月5日 |
---|---|
0.3.2 |
|
0.2.1 | 2023年8月27日 |
0.1.0 | 2023年8月13日 |
在配置中排名26
每月43,429次下载
被34个 crates (23 直接)使用
35KB
424 行
homedir
此Crate存在是为了提供一种获取任何用户主目录的可移植方法。API非常简单:有两个主要功能,home
和 my_home
。前者可以在您有用户名的情况下获取任何用户的主目录。后者可以获取执行此进程的用户的主目录。
如果只需要执行此进程的用户的主目录,那么其他Crate可能是更好的选择,例如 directories
。此外,使用主目录查找文档、下载、图片等目录可能不准确。
此Crate旨在在Windows和Unix系统上工作。然而,Unix系统没有统一的API。此Crate可能不支持没有 getpwnam_r(3)
、getpwuid_r(3)
和 getuid(2)
函数的Unix系统。另外,对于在其他地方使用COM库的Windows程序,需要特别注意。有关详细信息,请参阅Crate文档中的“针对Windows用户”部分。
用法
此crate在crates.io上,可以通过执行以下命令使用:cargo add homedir
或者将以下内容添加到你的Cargo.toml
文件的依赖中。
[dependencies]
homedir = "0.3.3"
特性
windows-coinitialize
-- 默认启用。在Windows上,如果CoCreateInstance
返回CO_E_NOTINITIALIZED
,则调用CoInitializeEx
。有关CoInitializeEx
的详细信息,请参阅文档中“针对Windows用户”的部分。
crate的完整文档,包括示例,可在docs.rs页面上找到。
许可
根据您的选择,许可协议为以下之一:
- Apache License,版本2.0 (LICENSE-APACHE或http://www.apache.org/licenses/LICENSE-2.0)
- MIT License (LICENSE-MIT或http://opensource.org/licenses/MIT)
。
贡献
除非您明确声明,否则根据Apache-2.0许可证定义的,您有意提交以包含在作品中的任何贡献,应如上所述双重许可,无需任何附加条款或条件。
您可以在您贡献的任何文件中自由添加版权标题。
版权和致谢
版权(C)2023-2024 James Petersen [email protected]。
在版本0.3.0
中,在编写homedir::windows::UserIdentifier::to_home
函数时引用了wmi-rs
crate,尽管现在可能没有相似之处。无论如何,我认为正确致谢他们很重要,因此我在这里包含了这一声明。引用的存储库也根据APACHE和MIT许可,这些许可包含在本存储库中。
依赖项
~2–37MB
~565K SLoC