0

我们使用以下代码通过应用程序创建一个 Sql DB Bakup:

ServerConnection srvConn = new ServerConnection(HostName);
srvConn.LoginSecure = true;      
Server srvSql = new Server(srvConn);

string FileName = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
                  +"//Closing Back-Up");
bkpDatabase.Database = database;
BackupDeviceItem bkpDevice = new BackupDeviceItem(FileName, DeviceType.File);
bkpDatabase.Devices.Add(bkpDevice);
bkpDatabase.SqlBackup(srvSql);

由于正确的问题,它适用于不包括安装操作系统的驱动器的驱动器。在带有操作系统的驱动器中显示:无法打开备份设备。我在 Internet 和 SO 上进行了搜索,但它建议使用 SQL Server 配置管理器手动将内置帐户从“网络服务”更改为“本地系统”。

但是我们在线分发我们的软件并通过 CD 进行自我安装,因此不可能指导每个客户都这样做,因为他们在技术上可能并不精通它。

那么问题来了,我们可以通过 Script 更改内置帐户吗?或者我们可以通过程序或脚本执行任何其他解决方案吗?

谢谢你。

编辑: 我们分发 SQL Server 2008 Express 作为先决条件,并从与我的应用程序相同的文件夹下载。先决条件不要求任何帐户设置或实例名称等设置,我们在 SQL Server 手动安装过程中找到这些设置。

4

1 回答 1

0

不确定这是否有效,但您可以尝试通过代码以管理员身份运行程序。有一篇很好的文章how to run program with admin rights。

如何强制我的 C# Winforms 程序在任何计算机上以管理员身份运行?

于 2013-07-02T05:41:05.207 回答