Utwórz MSI lub projekt konfiguracji w programie Visual Studio 2012

130

Tworzę małą aplikację i chciałbym stworzyć jeden plik MSI.

W programie Visual Studio 2010 masz ten typ projektu w obszarze:

Inne typy projektów -> Konfiguracja i wdrażanie -> Instalator programu Visual Studio -> Konfiguracja projektu

Ale jedyne, co masz w programie Visual Studio 2012, to „Włącz InstallShield Limited Edition”.

Możesz zmienić .NET Framework, ale nic się nie zmienia.

Dlaczego już go nie ma? Jak mogę to odzyskać? Czy jest na to nowy sposób?

Kris Nobels
źródło
1
Jaki jest sens dodatku Visual Studio, jeśli nie ma możliwości jego wdrożenia ???!
DevDave,
Tytułem odniesienia, oto opis najczęściej używanych alternatywnych narzędzi używanych do tworzenia MSI: stackoverflow.com/a/1546941/129130 . Wszystkie są trochę drogie, z wyjątkiem Wix.
Stein Åsmul

Odpowiedzi:

37

Aby utworzyć projekty instalacji w programie Visual Studio 2012 z programem InstallShield Limited Edition, obejrzyj ten klip wideo .

Limitowana edycja InstallShield, w której nie można instalować usług.

„ISLE jest zdecydowanie najgorszą opcją instalatora, a zaktualizowana wersja, za którą zapłacono za odczyt, jest w najlepszym przypadku niewygodna w użyciu i niemożliwa w większości sytuacji. InnoSetup, Nullsoft, Advanced, WiX lub prawie każdy inny instalator jest lepszy. Jeśli przeprowadził ankietę i zobaczyłbyś, że nikt nie używa ISLE. Nie wiem, dlaczego nadal kojarzysz się z InstallShield. To szkodzi twojej wiarygodności. Każdy programista wart połowy swojej wagi wie, że ISLE jest bezwartościowy. musieli zakwestionować ocenę Microsoftu ”.

Autor: Edward Miller (komentarze w Visual Studio Installer Projects Extension ).

Zestaw narzędzi WiX , który, choć potężny, jest wyjątkowo nieprzyjazny dla użytkownika i ma stromą krzywą uczenia się. Istnieje nawet do pobrania szablon do instalowania usług Windows (ref. VS2012: Instalator usług Windows? ).

W przypadku programu Visual Studio 2013 zobacz wpis w blogu Tworzenie instalatorów za pomocą programu Visual Studio .

santhoshkumar
źródło
3
Jak na wideo, nie można tworzyć Setup.msiw VS 2012, więcej pomocy .. ??
AB Bolim,
Limitowana edycja osłony instalacji, która nie może instalować usług. Zestaw narzędzi WIX, który, choć potężny, jest wyjątkowo nieprzyjazny dla użytkownika i ma stromą krzywą uczenia się. Istnieje nawet szablon do pobrania do instalowania usług systemu Windows. arstechnica.com/civis/viewtopic.php?f=20&t=1190745
Kiquenet
Cześć @santhoshkumar, Po zakończeniu instalacji okna z MSI, moje pliki RAW (projekt i kodowanie) są również wyświetlane w miejscu instalacji. Stworzyłem tę aplikację przy użyciu Visual Studio 2010. Instalacja została utworzona pomyślnie, ale po instalacji MSI ten problem występuje. Proszę pomóż mi. Z góry dziękuję.
dilipkumar1007
68

Proszę zobaczyć:

Projekty instalacji programu Visual Studio (vdproj) nie będą dostarczane z przyszłymi wersjami programu VS

Wdrożenie Instalatora Windows

1 1/2 roku temu ogłoszono, że typy projektów zostały zabite. Alternatywy to:

  1. Skorzystaj z rozwiązania VS2008 / 2010, aby utworzyć instalator
  2. Przełącz się na inne narzędzie, takie jak InstallShield lub Windows Installer XML
Christopher Painter
źródło
jeśli zdecydujemy się na pierwsze rozwiązanie… czy możemy dodać wymagania wstępne jako .NET 4.5?
Sreekumar P
Możliwie. Uważam, że VS ma gdzieś katalog plików konfiguracyjnych (XML?), Które zawierają definicję wymagań wstępnych. Być może uda Ci się wypracować strukturę danych, a następnie utworzyć własne definicje dla .NET 4.5. Nie byłby obsługiwany i tak naprawdę umieszczam numer 1 tylko po to, aby wskazać, że jest to opcja. Osobiście, mówiąc jako ekspert w tej dziedzinie z 16-letnim doświadczeniem, nie lubię prawie wszystkiego w tym narzędziu i nie próbowałbym tchnąć w nie więcej życia. Nie byłem zasmucony, gdy usłyszałem, że Microsoft go zabija.
Christopher Painter
Spójrz tutaj, jeśli chcesz to wypróbować: C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages Ustalenie, w jaki sposób haszują atrybuty PublicKey, prawdopodobnie będzie jedną z największych przeszkód.
Christopher Painter
1
Przepraszam, co właściwie oznacza „Użyj rozwiązania VS2008 / 2010 do zbudowania instalatora”?
Alan Macdonald
4
Oznacza to, że jeśli masz projekt wdrożenia i projekty aplikacji w tym samym rozwiązaniu, będziesz musiał przestać to robić. Będziesz musiał podzielić je na dwa rozwiązania i pozostawić rozwiązanie wdrożeniowe na VS2005 / 2008/2010 i przenieść swoje rozwiązanie aplikacyjne do 2012 roku.
Christopher Painter
24

Czy wypróbowałeś metodę „Opublikuj”? Wystarczy kliknąć prawym przyciskiem myszy plik projektu w eksploratorze rozwiązań i wybrać „Opublikuj” z wyskakującego menu. Tworzy to instalator w kilku bardzo prostych krokach.

Więcej konfiguracji instalatora można przeprowadzić na karcie Publikuj w oknie właściwości projektu.

Uwaga: ta metoda działa tylko w przypadku aplikacji WPF i Windows Forms.

grantnz
źródło
6
Znany również jako ClickOnce - msdn.microsoft.com/en-us/library/t71a733d(v=vs.110).aspx
Surfbutler
Zrobiłem to samo w moim osadzonym projekcie zawierającym okna WPF i dll VC ++. Mój klient poprosił mnie o dołączenie pakietu redystrybucyjnego VC ++ do instalatora. Czy możesz mi pomóc? Ponieważ przeszedłem przez cały kreator, ale nie widziałem żadnej opcji dołączenia oddzielnego instalatora do wdrożenia przy użyciu tej metody wdrażania ClickOnce.
Manish Dubey
@grantnz Wreszcie znalazłem opcję. Znalazłem to w Prjoect Properties -> Publish-> Prerequisites. Mam nadzieję, że też to znajdziesz.
Manish Dubey
17

Firma Microsoft wysłuchała wołania o obsługę instalatorów (MSI) w programie Visual Studio i wydała rozszerzenie Visual Studio Installer Projects . Możesz teraz tworzyć instalatory w Visual Studio 2013; pobierz rozszerzenie tutaj z visualstudiogallery.

Piotr
źródło
2
Nie masz rozszerzenia na VS 2012? Jakikolwiek pełny kod źródłowy, prawdziwa przykładowa aplikacja + projekt konfiguracji?
Kiquenet,
Downloaded Installer Projects Extension, zbudował prosty plik msi, aby umieścić bibliotekę DLL innej firmy w GAC w krótkim czasie. Bardzo prosty, łatwy w użyciu, robi podstawy.
Chris Mills
1
ten stos pyta o 2012.
TPG
5

ISLE (InstallShield Limited Edition) jest „zamiennikiem” projektu Visual Studio Setup and Deploy, ale wielu użytkowników uważa, że ​​firma Microsoft postąpiła źle, usuwając obsługę formatu .vdproj z programu Visual Studio 2012 (i nowszych) i obsługując oprogramowanie firm trzecich.

Wiele osób prosiło o jego zwrot ( przywróć podstawową konfigurację i typ projektu wdrożeniowego Visual Studio Installer ), ale Microsoft jest głuchy na nasze głosy ... naprawdę smutny.

Ponieważ WiX jest naprawdę skomplikowany, myślę, że warto wypróbować kilka darmowych systemów instalacyjnych - NSIS lub Inno Setup . Oba są skryptowalne i łatwe do nauczenia - ale potężne jak oryginalny SADP.

Stworzyłem naprawdę fajne rozszerzenie Visual Studio dla NSIS i Inno Setup z wieloma funkcjami (inteligencja, podświetlanie składni, paski nawigacyjne, kompilacja bezpośrednio z Visual Studio itp.). Możesz spróbować na www.visual-installer.com (przepraszam za własną promocję :)

Pobierz Inno Setup (jrsoftware.org/isdl.php) lub NSIS (nsis.sourceforge.net/Download) i zainstaluj V&I (unsigned-softworks.sk/visual-installer/downloads.html).

Wszystkie instalatory są proste Dalej / Dalej / Dalej ...

W Visual Studio wybierz menu File -> New -> Project , wybierz NSISProject lub Inno Setup , a nowy projekt zostanie utworzony (z pełnymi źródłami).

Slappy
źródło
1
Jak zainstalować NSIS i Inno Setup? Pierwsze kroki krok po kroku w 5 minut i pełny przykład kodu źródłowego w VS?
Kiquenet,
1
Pobierz Inno Setup ( jrsoftware.org/isdl.php ) lub NSIS ( nsis.sourceforge.net/Download ) i zainstaluj V&I ( unsigned-softworks.sk/visual-installer/downloads.html ) Wszystkie instalatory są proste Dalej / Dalej / Dalej ... W Visual Studio wybierz File -> New -> Project, wybierz NSISProject lub InnoSetup i zostanie utworzony nowy projekt (z pełnymi źródłami).
Slappy
2

Zapoznaj się z artykułem Wdrażanie Instalatora programu Visual Studio . To na pewno ci pomoże.

Na stronie możesz wybrać odpowiednią wersję platformy .NET Framework. Więc dla ciebie, zrób to .NET 4.5. Wydaje mi się, że będzie tam dla Visual Studio 2012.

Sid
źródło
1
W przypadku programu Visual Studio 2012 jest napisane, że „ InstallShield Limited Edition (ISLE) jest bezpłatna dla programistów Visual Studio i zastępuje funkcje szablonów projektów w programie Visual Studio na potrzeby konfiguracji i wdrażania ”.
Peter Mortensen
0

Myślę, że wdrożenie rozwiązania Office przy użyciu ClickOnce (MSDN) może być przydatne.

Po stworzeniu wtyczki do Outlooka dla Office 2010 problemem było zainstalowanie jej na komputerze klienta, bez użycia ISLE lub innych skomplikowanych (lub drogich) narzędzi.

Rozwiązaniem było użycie instrumentu publikowania projektu Visual Studio, jak opisano w linku. Tylko dwie rzeczy do zrobienia, zanim konfiguracja będzie działać:

Flavio Bianchi
źródło