同胞类人猿和睡莲叶和明轮!
我正在使用VS 2008在C#/ .NET / WPF中开发Windows桌面应用程序。该应用程序需要在Vista和XP计算机上安装和运行。 我正在使用安装程序/ Windows Installer项目来安装该应用程序。
我的应用程序需要读取/修改/写入SQLCE数据库文件(.sdf)以及与我正在使用的第三方控件相关的其他数据库类型文件。 这些文件应该在PC上的所有用户/登录之间共享,其中任何一个都不需要是管理员。 当然,这意味着文件不能进入程序自己的安装目录(因为在Vista到来之前通常会这样做,是的,是的!)。
我原本以为解决方案很简单。 Vista和XP都有用于此目的的共享应用程序数据文件夹。 (Vista中的“\\ ProgramData”,XP中的“\\ Documents and Settings \\ All Users \\ Application Data”。).NET Environment.GetFolderPath(SpecialFolder.CommonApplicationData)调用用于查找给定PC上这些文件夹的路径,是,是的!
但我无法弄清楚如何在安装项目中将shared-application-data文件夹指定为目标。
Setup项目提供了一个“Common Files”文件夹,但是它用于共享程序组件(不是数据文件),通常位于“\\ Program Files”下,并且具有与“\\ Program files”中的任何其他内容相同的安全限制,是的是的!
安装项目提供了“用户的应用程序数据”文件夹,但这是一个每用户文件夹,这正是我想要避免的,是的,是的!
是否可以从VS 2008安装项目以强大的跨Windows版本方式将文件添加到shared-app-data文件夹? 谁能告诉我怎么样?