繁体   English   中英

Environment.UserName 为同一用户(外壳)提供不同的结果:替代/转换?

[英]Environment.UserName gives different results for same user (casing): alternative/transformation?

.NET 在大多数情况下(>99.9% 的时间)调用Environment.UserName提供相同大小写的用户名 - 例如Awebb 虽然我偶尔会看到AWebb 有时,它似乎与用户在登录时输入的用户名相关,但有时这被证实并非如此。

我认为这是一个糟糕的设计,用户名应该是正确大小写的用户名,无论如何:如果用户决定输入aWEbb ,那么这并不意味着操作系统应该开始告诉应用程序这是他们的用户名。

除此之外,使用Environment.UserName所需的相同安全权限获取当前用户的用户名(理想情况下没有任何域)的最佳/其他方式是什么? 我知道我可以将所有内容规范化为小写/大写,但我真的在获得正确大写/格式化的用户名之后。

获取他们的个人资料文件夹的名称:

SHGetKnownFolderPath(FOLDERID_Profile, 0, 0, &s);

例如C:\Users\KJohnstone

看来这根本不可能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM