У меня есть приложение, использующее SQL Server Express 2005 SP3. Это приложение распространяется среди нескольких сотен пользователей, каждый из которых использует XP. Однако наша компания скоро перейдет на Windows7. Мое приложение использует операцию массовой вставки в SQL Server и отлично работает в XP. Однако в Windows7 мне нужно открыть SQL Server Management Studio в качестве администратора и выполнить следующую команду, чтобы операция массовой вставки работала правильно:
EXEC master..sp_addsrvrolemember @loginame = N'BUILTIN\Users', @rolename = N'bulkadmin'
Очевидно, что делать это вручную на ПК каждого пользователя нецелесообразно. Итак, мне интересно, как я могу написать это, если пользователи не запускают мое приложение от имени администратора. Это что-то, что можно настроить в пакете начальной загрузки SQL Server во время установки? А как насчет существующих установок?
Это можно сделать с помощью пакета MSI, который позволит вам запускать определенные команды от имени администратора. Тем не менее, для работы MSI, который вы создадите, необходимо будет повысить уровень доступа. Именно так все работает в Windows 7, с включенным UAC и всем остальным.
Отключение UAC было бы другой идеей, но на самом деле это не выход.