Как создать проект InstallShield LE для установки службы windows?



Я загрузил Visual Studio 2012 вчера, когда он был выпущен на MSDN. Я заметил, что некоторые типы проектов, которые у нас были в 2010 году, исчезли или отличаются. Самая большая разница для меня сейчас-это удаление проекта установщика Windows. Теперь мы вынуждены использовать InstallShield LE (Limited Edition). Проблема здесь в том, что я пишу тонну служб Windows, и я не вижу, как настроить InstallShield LE. Похоже, что нам (моей компании) придется инвестировать в лицензии на профессиональное издание.



кто-нибудь нашел способ установить службы в InstallShield LE? При использовании проекта установщика Windows вы просто устанавливаете пользовательские действия.

965   11  

11 ответов:

для Visual Studio 2012 & InstallShield LE выполните следующие действия:

  • запустите программу InstallShield project assistant и добавьте основной вывод службы в раздел файлы приложения.
  • после того, как вы закончите с помощником по проекту, дважды щелкните элемент "файлы" на втором шаге проекта установки.

Files section

  • Правой Кнопкой Мыши на основном выходе вашего сервиса, и перейти к свойства.
  • перейдите на вкладку " Настройки COM и .NET "и установите флажок" класс установщика". enter image description here
  • Нажмите Кнопку ОК

теперь, как только вы построите и запустите свою установку, ваша служба появится в оснастке "службы Windows".

обратите внимание, что это предполагает, что вы добавили "установщик проекта" в свой проект службы (щелкните правой кнопкой мыши на листе дизайна службы и нажмите "Добавить установщик"). Я могу подтвердить эту работу на Windows 8 С помощью Visual Studio 2012 / InstallShield LE.

Я недавно установил VS 2012 с Install Shield LE. Сначала я продолжал получать внутреннюю ошибку сервера ISEXP -5036 после сборки (это было после настройки проекта ISLE и запуска через Install Shield Project Assistant). В конце концов я узнал, что он пытался создать MSI в типе носителя DVD-5, где он терпел неудачу. По какой-то причине, создавая решение снова с нуля, каким-то образом распознается только сборка для типов носителей CD_ROM и SingleImage, которые завод.

в любом случае, чтобы исправить ошибку 5036, перейдите на вкладку сборка в VS 2012 (верхнее меню), выберите configuration manager, и вы увидите, что ваш установочный файл выбран на конфигурации DVD-5. Измените это на CD_ROM и нажмите кнопку Закрыть. Как только вы построите / перестроите его, он завершится без ошибки 5036.

enter image description here

при использовании флажка класс установщика может работать для некоторых экземпляров, может возникнуть следующая ошибка:

ошибка 1001.Указанная служба уже существует

вот отрывок из этого ссылке о том, как решить эту проблему:

Ошибка: Ошибка 1001.Указанная служба уже существует

эта ошибка возникает, если компонент, устанавливающий службу .NET неправильно настроен ".Чистый класс установщика" установить "Да". Этот способ установки службы .NET заключается в использовании компонента\Advanced Settings\Services view, а не параметр" класс установщика .NET". Создание определений в представлении компонент\Дополнительные параметры\службы создает записи в установщике Windows ServiceControl и Столы ServiceInstall. Эти записи используются Windows Установщик "InstallServices" действие для установки службы.

Если ваш проект .NET, то попробуйте, то вы можете использовать класс ServiceProcessInstaller с InstallShield LE.

чтобы заставить его работать с InstallShield, вам нужно зайти в дерево "файлы" InstallShield и щелкнуть правой кнопкой мыши на вашем файле. Затем установите флажок "класс установщика" на вкладке "Настройки COM и .NET".

Я получил его на работу, но у меня были проблемы на некоторых ОС, таких как Windows 2008R2. Ваш пробег может отличаться.

вот пример: http://www.codeproject.com/Articles/14353/Creating-a-Basic-Windows-Service-in-C

У меня были всякие проблемы с этим.

следующим образом.

  1. InstallShield занимает годы, чтобы загрузить
  2. процесс регистрации-это боль.
  3. параметры конфигурации сбивают с толку и слишком сложны.
  4. принятое решение в этой теме-это хак, и он не всегда работает - см. 1001 в документации - по сути, вам нужно пройти через paywall, чтобы получить правильные параметры конфигурации для установки служба Windows.

решение для меня, как упоминалось в другом месте - было отказаться от InstallShield

enter image description here

очень легко с этой точки зрения.

изменить: обновить-установить последнюю версию отсюда https://wix.codeplex.com/releases/view/115492 для vs 2013 / 2015

проекты установки Visual Studio вернулись в VS 2013 в качестве расширения visual studio.

https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d

пожалуйста, обновите свое решение и проекты до VS 2013. Если вы все еще находитесь в VS 2010, вам, вероятно, лучше перейти непосредственно на VS 2013.

мой опыт работы с Installsheild LE заключается в том, что он очень изворотливый, но как только вы выясните трюки, это проще использовать. Тем не менее, я думаю, что ограниченный выпуск-это способ Microsoft и Flexera продать полнофункциональное издание. Другими словами, сначала мы платим Microsoft много денег за Visual Studio, а затем их партнер (в преступлении) больше за Installsheild. Плохая стратегия, которая не сработала, так как они должны были вернуть проекты установки в VS 2013.

Я уже писал об этом предмете:

расширение InstallShield с помощью установщика Windows XML-Windows Services

в основном вы создаете модуль слияния с помощью WiX для инкапсуляции службы, а затем добавляете его в свой проект installshield. (Не забудьте связать с каталогом INSTALLDIR, чтобы убедиться, что ваш файл идет туда, где вы ожидаете ). Сборка и тестирование на виртуальной машине. Кусок пирога.

Я использую VS2012 и Installshield LE Spring Edition. Мне не нужно было использовать Wix.

Если вы столкнулись с ошибкой "не удалось создать _isconfig.xml для использования с InstallUtilLib.dll", создайте папку с тем же именем, что и ваш проект установки, и внутри папки проекта установки.

кредиты http://community.flexerasoftware.com/showthread.php?165929-Could-not-create-_isconfig-xml-for-use-with-InstallUtilLib-dll

Я просто получил некоторые проблемы с поиском, где добавить установщик, как указано в ответе. Так вот оно как.

дважды щелкните по классу обслуживания в вашем проекте службы Windows Пустой экран с текстом " чтобы добавить компоненты в свой класс, перетащите их из панели инструментов и используйте окно свойств для установки их свойств..." Щелкните правой кнопкой мыши в любом месте, но по ссылкам и выберите "Добавить установщик"

Я

имейте в виду, что все вышеперечисленные объяснения не помогут вам, если вы планируете создать позднее обновление, настройка. InstallShiled LE не может остановить запущенную службу при обновлении. Вы не можете сделать это либо из установщика службы Windows -> BeforeInstall событие.

хотел положить это сюда;

на VS 2015, при этом я неоднократно сталкивался с ошибкой 1001 при установке.

ответ на этой странице пояснил, что на новые версии (что-нибудь за 2012 год), видимо, вам нужно явно оставить установщик класс опции unchecked, а затем добавьте свою службу windows в разделе "службы" на Шаге 3 проекта установщика:

ошибка 1001 при установке пользовательской службы Windows

Comments

    Ничего не найдено.