3

我编写了一个应用程序,它使用 Wix 3.5 安装程序引导 SQL Express 2008,然后在第一次运行应用程序时尝试创建数据库。因此,SQL Express 的安装完全无人值守。当安装应用程序的帐户是机器上的管理员时,这一切都可以正常工作。

但是,不出所料,以非管理员身份安装时会出现问题。当我们尝试运行 CREATE DATABASE sql 时,它会发出声音 -

sql express 2008 在数据库“master”中创建数据库权限被拒绝

显然标准用户帐户没有正确的权限。因此,我们需要以某种方式授予标准用户正确的权限。我曾考虑捆绑一个单独的可执行文件,该可执行文件被迫以管理员身份(通过 UAC)运行,它将创建数据库并将新数据库的权限分配给用户帐户 - 这不是一个非常优雅的解决方案。

这似乎是您在部署应用程序时想要做的一件显而易见的事情,但似乎缺乏关于该主题的信息。寻找建议 - 谢谢。

4

2 回答 2

2

在安装应用程序时,您需要成为正在安装它的机器上的管理员,这是一个相当常见的先决条件。为什么你不能把它作为一个先决条件?大多数系统管理员不希望他们的非管理员用户安装应用程序。

于 2010-07-30T09:29:30.453 回答
1

事实证明,您可以使用 WiX 和 SQL 扩展来完成所有这些工作。

http://www.tramontana.co.hu/wix/lesson7.php#7.1

于 2010-08-05T08:36:17.990 回答