gpt4 book ai didi

c# - Windows 7 中的未授权访问异常

转载 作者:太空狗 更新时间:2023-10-30 00:28:47 25 4
gpt4 key购买 nike

我有一个应用程序,它在启动时会读取许可证文件。我的安装在程序文件中为应用程序创建文件夹,创建许可证文件夹并将许可证文件放在那里。但是,当我尝试运行该应用程序时,它需要读取/更新许可证文件。当我尝试这样做时,我得到一个“未经授权的访问异常”。我以管理员身份登录并手动运行该程序。

知道为什么即使路径正确我也无法访问该文件吗?但是在安装过程中,它会很好地创建文件和文件夹吗?

我有 MyApplication.exe,我的许可证阅读器在一个名为 MyApplicationTools 的单独 DLL 中。我正在像这样读/写许可证文件:

       //Read
StreamReader reader = new StreamReader(path + "license.lic");

//Write
StreamWriter writer2 = new StreamWriter(path + "License.lic");
string str = Convert.ToBase64String(sharedkey.Key);
writer2.WriteLine(str);
writer2.Close();

谢谢

最佳答案

由于 UAC,您的程序没有获得管理权限。

右键单击该程序,单击以管理员身份运行,然后重试。
您也可以create a manifest that tells Windows to always run as Administrator .
但是,您应该考虑将许可证文件放在用户的 AppData 文件夹中,这不需要管理权限。


顺便说一句,您应该使用Path.Combine 方法来创建路径。
此外,如果您只想将单个字符串写入文件,则应调用 File.WriteAllText
例如:

File.WriteAllText(Path.Combine(path, "License.lic"), Convert.ToBase64String(sharedkey.Key));

关于c# - Windows 7 中的未授权访问异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1987232/

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