gpt4 book ai didi

c# - 无法更新 .mdf 数据库,因为数据库是只读的(Windows 应用程序)

转载 作者:行者123 更新时间:2023-11-30 19:48:13 24 4
gpt4 key购买 nike

我使用 C# 创建了一个数据库 Windows 应用程序。我的应用程序在 Windows XP 上成功运行,但在 Vista 或 Windows 7 系统上无法正常执行。我的应用程序显示类似于

的消息

Failed to update .mdf database because the database is read-only

谁能给我一个解决方案?

最佳答案

Windows XP 和 Windows Vista/7 之间最大的变化是 UAC 的引入,这意味着用户,即使创建为管理员,通常也没有对“重要”位置的读/写访问权限,例如 %programfiles%(通常是 C:\Program FilesC:\Program Files (x86))目录。这就是为什么您的应用程序可以在 Windows XP 而不是 Windows Vista 上运行的原因。

如果共享数据,您需要将DATA 存储在%programdata% 目录(通常是C:\ProgramData)机器上的用户之间或 %appdata%(通常是 C:\Users\USERNAME_GOES_HERE\AppData\Roaming)如果特定于给定用户。您现在不会再遇到无法写入文件的问题。

原因是将数据存储在您的程序安装目录中,您做错了事。 Windows 以前并没有阻止您这样做,但是有相当广泛的记录表明 %programfiles% 不是存储数据的合适位置。

关于c# - 无法更新 .mdf 数据库,因为数据库是只读的(Windows 应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5713416/

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