用Sqlite DB部署VB.Net Winforms App

问题描述

|| 好的... VB6日子已经过去了,我们可以在应用程序目录中创建一个文件夹(数据),并将数据库粘贴在该目录中(c:\\ program files \\ myApplication \\ Data \\ MyAppData.s3db)。我不想将vb.net与sql Server一起使用!在.Net中,我知道特殊文件夹和User Application Data文件夹。如果我将这种类型的文件添加到我的程序包和部署项目中,并且包含该文件作为我们的空白数据库,则将创建该文件夹,并且该数据库将不在该文件夹中。如果使用“应用程序数据”文件夹,则由于文件夹和所有子文件均为只读,因此我失去了写功能。我被困住了。我无法在代码中的C:\\ Program Files(x 86)中创建新文件夹,然后通过运行每个表的create table查询从头开始创建数据库。什么是好的应用程序部署?似乎没有人对此有任何答案。任何帮助,将不胜感激。     

解决方法

  如果我使用“应用程序数据”文件夹,则我失去了写能力,因为该文件夹和所有子文件均为只读 有一个只读的“所有用户应用程序数据”文件夹,每个用户都有一个单独的“应用程序数据”文件夹。每个用户的“应用程序数据”文件夹不是只读的,您可以写入它们。 我通常要做的是将一个空白数据文件部署到“程序文件”文件夹中,并在用户首次运行我的应用程序时将此文件复制到用户的“应用程序数据”文件夹中。     ,全局应用程序数据文件夹对于非管理员用户是只读的。但是每个用户都有自己的Application Data文件夹,您绝对可以写入该文件夹,并且它是存储特定于应用程序的数据的首选位置。不幸的是,这些文件夹默认情况下是隐藏的。