gpt4 book ai didi

c# - 在 Windows 7 中创建目录和文本文件时出现 UAC 问题

转载 作者:行者123 更新时间:2023-11-30 14:01:26 25 4
gpt4 key购买 nike

我有一个需要创建文本日志的程序。在 XP 中,一切正常,但是当我在 Windows 7 上测试它时——后来为我的开发计算机升级到 Windows 7——我收到一个错误消息“访问路径 'C:\Program Files (x86)\Ludlum Measurements, Inc\LMI Universal Software\UniversalLog\' 被拒绝”。如果我让安装程序创建文件夹然后尝试在该文件夹中创建文本文件,我会收到类似的错误。

我知道这与权限有关,但我应该授予什么权限以及如何授予权限?

使用日志功能的程序?

日志进入的文件夹?

程序所在的文件夹?

以及此修复程序如何在 XP、Vista、Server 2005 和 Server 2008 下作为服务工作(部分程序作为 Windows 窗体运行,部分作为服务运行) ?

-编辑-添加了重点。

重申一下:在 XP 上安装和运行时如何工作?服务器 2003?服务器 2008?这会给他们带来任何问题吗?

还有一个新问题:我的程序可以访问 ApplicationData 文件中的文件吗?我只记得整个问题源于我试图创建一个配置文件来保存 SQL 数据库的连接信息。用头撞砖墙一天往往会让你忘记当初为什么要开始这样做。同样,这最初适用于 XP、Server 2005 和 Server 2008。

最佳答案

你应该使用 Environment.GetFolderPat h 并选择一个 Environment.SpecialFolder 文件夹,该文件夹在 UAC 打开时具有写入权限,并在那里写入您的日志文件。

默认情况下,在 UAC 下,您无权写入 C:\Program Files 或其子文件夹。

Environment.ApplicationData 通常是一个不错的选择,默认情况下它在 XP 、 Vista 、 Server 2005 和 Server 2008 上是可写的,除非管理员将内容锁定太多

Teach Your Apps To Play Nicely With Windows Vista User Account Control 是关于如何编写在 UAC 下表现良好的应用程序的好资源

关于c# - 在 Windows 7 中创建目录和文本文件时出现 UAC 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8154430/

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