Какой самый простой способ установить сотни файлов в проекте установки Visual Studio - PullRequest
3 голосов
/ 31 января 2009

У меня есть стандартное приложение на c #, которое выступает в качестве интерфейса GUI для статистического движка "R". «R» состоит из примерно 600 файлов в примерно 50 разных папках и может быть «установлен» на машине с помощью развертывания xcopy.

Я хотел бы упаковать и движок R, и мой c # gui в один файл setup.exe, чтобы пользователю не нужно было сначала устанавливать и устанавливать R, а затем мое приложение c # отдельно.

Я знаю, что могу создать проект установки и затем добавить файлы R по одному, но добавление всех 600 файлов будет очень утомительным!

Есть ли более простой способ делать то, что я хочу? Могу ли я добавить одну папку R и автоматически добавить подпапки и файлы, чтобы сохранить меня, добавляя их по одному? Или, может быть, в моем проекте установки выполните процедуру разархивирования, которая разархивирует движок R за один раз?

Ответы [ 5 ]

3 голосов
/ 03 августа 2009

Вы можете просто перетащить папку в проводнике Windows в представление «Файловая система» вашего установщика vdproj. Все файлы и папки в иерархии будут добавлены в ваш проект установки.

Совет. Если папки находятся в SVN или аналогичном источнике, удалите все скрытые папки, прежде чем сделать это! Если у вас есть PowerShell, проверьте

get-childitem . -include _svn -force -recurse | foreach ($_) {remove-item -recurse -force $_.fullname}

Или вы всегда можете использовать Windows Search, чтобы найти все скрытые каталоги в иерархии и удалить их из окна результатов.

2 голосов
/ 10 февраля 2011

Я думаю, что Баджер - большая часть пути туда.

Если ваши 600 файлов являются частью проекта, и для каждого из них задано «Действие сборки», вы можете добавить все это просто:

  1. Переход к проекту установки
  2. Выбор Добавить> Вывод проекта
  3. Выбор проекта, к которому относятся файлы, из выпадающего списка
  4. Выбор опции «Файлы содержимого» из списка ниже
  5. Нажатие ОК.

Чтобы проверить, будут ли файлы добавлены в соответствующее место, перейдите в меню «Просмотр»> «Файловая система» в проекте установки и убедитесь, что вывод файлов содержимого добавляется в правильную папку.

Файлы будут добавлены в каталог установки в той же иерархии, в которой они указаны в проекте, к которому они принадлежат.

1 голос
/ 29 января 2010

Одна вещь, которую вы можете попробовать, это добавить файлы R в качестве содержимого в проект C # - тогда проект установки может просто скопировать их для вас (убедитесь, что вы настроили файл установки для копирования файлов содержимого из вашего проекта, а не только первичный выход).

Вы можете либо добавить папки R в проект вручную, либо настроить скрипт для изменения файла .csproj (это просто файл XML) - элементы контента представлены этими узлами:

<Content Include="myfile" /> 
1 голос
/ 04 февраля 2009

Я не смог обработать файл проекта, поэтому в итоге я сжал все файлы, которые хотел развернуть, добавил zip-файл в приложение и создал собственный класс Installer, чтобы разархивировать их (используя CSharp ziplib)

1 голос
/ 31 января 2009

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

...