gpt4 book ai didi

c# - 在不知道用户名的情况下获取用户特定的路径

转载 作者:太空宇宙 更新时间:2023-11-03 18:12:55 25 4
gpt4 key购买 nike

我在C:\Users\myusername\AppData\Roaming\myapp\file.html中有一个HTML文件。我正在通过C#应用程序中的Web浏览器访问文件,以从应用程序中预览文件。
但是,将应用程序放置在另一台计算机上时,webBrowser1中的地址仍然是我的用户名专用的,因此其他人无法访问预览。

有没有一种方法可以在Web浏览器中以URL的形式获取文件而无需在URL中包含硬编码的用户名?

我试过的


C:\ Users \%USERNAME%\ AppData \ Roaming \ myapp \ file.html
C:\ Users \ AppData \ Roaming \ myapp \ file.html


谢谢!

这是我得到帮助后使用的代码:

string folderPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
string address = Path.Combine(folderPath + @"\myapp\file.html");
webBrowser1.Navigate(address);

最佳答案

如果要获取当前登录用户的名称,则必须阅读Environment.UserName属性。

此外,如果您需要访问漫游用户的AppData目录,则无需硬编码即可获取文件夹路径(不要忘记,在每个Windows版本和c:\users路径下,用户目录并不总是AppData可能也会有所不同):

string folderPath = Environment.GetFolderPath(
Environment.SpecialFolder.ApplicationData);


在这种情况下,只需附加文件名:

string url = Path.Combine(folderPath, "file.htm");


笔记
如果出于任何原因需要使用环境变量,则必须首先扩展它们:

string path = Environment.ExpandEnvironmentVariables(@"C:\Users\%USERNAME%\");

关于c# - 在不知道用户名的情况下获取用户特定的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11361742/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com