【发布时间】:2009-10-16 17:28:29
【问题描述】:
我使用 VS 2008 创建了一个新的 Visual Studio 安装项目。
我用它来安装 SQLExpress。 当我在安装程序之外手动执行时,SQLExpress 的 installatino 工作正常。
但是当我安装时,我在 SQL Express 中遇到权限错误。 我发现这是因为当我从我的安装项目运行 SQLExpress 进程时,它作为系统帐户运行。
我尝试通过自定义操作和通过 Process.Start 安装模块后运行的 C# 代码来启动进程。 但它们都以系统帐户运行 SQLExpress 进程。
如何以当前登录用户的身份运行此进程?
注意:我也尝试启动 calc.exe,它也作为系统进程运行。为什么它不能在我的安装程序运行的用户的上下文中运行?
【问题讨论】:
-
我有点困惑。您创建 MSI 只是为了安装 SQL Express?那么为什么不使用 SQL Express 安装程序呢?还是 SQL Express 是您希望在应用程序之前安装的先决条件?
-
我也安装了其他 exe,但在我的应用程序启动之前,我需要安装一个新的 MS SQL Express 实例。
-
你是如何做到这一点的?典型的方法是为引导程序创建一个包描述并将其添加到 Properties -> Pre-requisites 到您的设置和部署项目中。
-
顺便说一句,SQL Express 默认作为 SYSTEM 运行。所以我不认为这是你的问题。
-
我从sql express网站下载了exe,然后使用命令行安装。您能否解释一下引导程序的过程,以便我可以安装 sql express 作为答案并接受它?
标签: c# windows-installer setup-project