Vb.net vb net 2008安装项目,msaccess db指向不同的文件夹
我在安装我的项目后遇到了这个问题。安装项目中的“应用程序文件”中包含的ms access数据库未被项目本身使用。在执行任何查询之前,程序都可以正常工作 我使用的connectionstring指向包含的ms access db文件,该文件是“DataSource=| DataDirectory |\MyDB.mdb” 执行任何查询后,将忽略此MyDB,而是在该位置创建一个同名的新数据库文件 C:\Users\myPC\AppData\Local\VirtualStore\Program Files\myproject\ 我的安装路径是 C:\ProgramFiles\myproject 我尝试在3台不同的机器上安装: Win7(此版本用于开发,已安装VS2008)-出现问题 Win 8.1(已安装VS2008)-出现问题 WinXp(未安装VS2008)-工作正常Vb.net vb net 2008安装项目,msaccess db指向不同的文件夹,vb.net,ms-access-2003,Vb.net,Ms Access 2003,我在安装我的项目后遇到了这个问题。安装项目中的“应用程序文件”中包含的ms access数据库未被项目本身使用。在执行任何查询之前,程序都可以正常工作 我使用的connectionstring指向包含的ms access db文件,该文件是“DataSource=| DataDirectory |\MyDB.mdb” 执行任何查询后,将忽略此MyDB,而是在该位置创建一个同名的新数据库文件 C:\Users\myPC\AppData\Local\VirtualStore\Program File
安装VS2008与我的问题有关吗 您是说您已将
DataDirectory
设置为C:\Program Files\myproject
?我不记得将DataDirectory设置为任何路径。我认为它会自动指向.exe所属的位置?你的应用程序不应该在C:\Program Files…
中存储数据,而且它可能有这样做的权限。当他们尝试时,操作系统会重定向到VirtualStore
。更好的方法是将数据存储在AppData
中并在那里访问它(使用Environment.GetFolder
获取要使用的名称)。非常感谢Protoix!为Megeneraly工作C:\Program Files…
不允许在没有管理员权限的情况下进行任何更改。以管理员权限运行.exe,您应该能够使用C:\Program Files…
。无法在Win8.1或Win7上运行它的原因不是VS2008,而是UAC。XP没有UAC。