Ищете способ программно или иным образом добавить новый экземпляр SQL 2005 Express Edition в систему, в которой уже установлен экземпляр. Обычно вы запускаете установщик Micrsoft, как я, в командной строке ниже, и это помогает. Выполнение команды в моем установщике не является проблемой, это скорее вопрос перетаскивания 40 МБ установщика MS-SQL, который мне не нужен, если у них уже установлен SQL Express. Вот что сейчас выполняет мой установщик:
SQLEXPR32.EXE /qb ADDLOCAL=ALL INSTANCENAME=<instancename> SECURITYMODE=SQL SAPWD=<password> SQLAUTOSTART=1 DISABLENETWORKPROTOCOLS=0
Мне не нужна помощь с запуском этой команды, скорее, это подходящий способ добавления нового экземпляра SQL 2005 Express без повторного запуска полного установщика.
Я бы подробно остановился на том, почему я хочу это сделать, но я бы просто всех утомил. Достаточно сказать, что наличие этой возможности создать новый экземпляр без времени, необходимого для переустановки SQL Express и т. д., Очень помогло бы мне в развертывании моего приложения и его установщика. Если для кого-то это имеет значение, я использую комбинацию NSIS и Advanced Installer для этого проекта установки.





Я не знаю, как это сделать с помощью API, но если никто не предлагает лучшего решения, вы всегда можете использовать Process.Start () для выполнения своей командной строки как есть.
Похоже, что пользовательский экземпляр может вам помочь. Если у вас есть файлы MDF и LDF, вы можете подключиться к файлам, указав SQL Server Express запустить пользовательский экземпляр и прикрепить указанный файл к этому экземпляру.
В этом искусном http://msdn.microsoft.com/en-us/library/bb264564.aspx есть хорошее описание того, как вы можете опираться на существующую установку SQL Server Express для создания экземпляра, специфичного для пользователя, на время вашего соединения.
Надеюсь, это поможет.
После месяцев / лет изучения этого кажется, что это невозможно. Ну, я думаю, я просто переустанавливаю каждый раз, когда мне нужен новый экземпляр. Думаю, это потому, что каждый экземпляр - это собственная служба.