прочитать файл внутри установочного пакета - PullRequest
1 голос
/ 19 апреля 2011

У меня есть файл, который я хочу использовать во время установки.Он содержит немного SQL.Этот файл не используется самим установленным приложением, поэтому я не хочу, чтобы он устанавливался на клиентский компьютер, я хочу, чтобы он был частью пакета установки, как и мои библиотеки DLL с настраиваемыми действиями, которые я определяю с помощью элемента Binary.Но как мне прочитать этот файл, если я вставлю его в установочный пакет?Есть ли для этого встроенные функции WiX / DTF?Или, может быть, я должен встроить этот файл по-другому?

Ответы [ 3 ]

2 голосов
/ 19 апреля 2011

Вы должны сделать что-то вроде следующего:

  • используйте элемент <binary> для включения файл как поток в двоичном таблица вашего пакета.
  • Поток файл из двоичной таблицы в временный файл в непосредственном обычае действие и сохранить местоположение временный файл в свойстве, например CleanupSQLFile
  • Делай, что это вам нужно сделать с файлом
  • Очистить файл, как только вы закончите с ним. Если вам нужно очистить файл как часть отложенной или фиксированной операции, вам нужно будет использовать действие с именем CleanupSQLFile и считывать местоположение файла из свойства CustomActionData. Property и CustomAction должны иметь одинаковые имена

Есть пример потоковой передачи файла из двоичной таблицы на InstallSite.

0 голосов
/ 10 мая 2011

Лучший способ, который я открыл для себя, - создать файл свойств для библиотеки пользовательских действий WiX и добавить туда весь SQL. Не нужно выполнять никаких дополнительных действий , чтобы SQL был доступен в пользовательских действиях!:)

0 голосов
/ 22 апреля 2011

У меня было такое же требование.Вы можете развернуть этот файл в каком-то месте, а затем легко читать, редактировать, выполнять из этого места

...