Warum funktioniert mein Installer nicht?
Ich bin mit meinen Programm in Visual Studio fertig geworden und wollte, dass man dieses Programm mit einen Installer wie jedes andere Programm welches man im Internet herunterlädt auf dem Computer installieren kann. Dafür habe ich mir die Visual Studio Erweiterung "Microsoft Visual Studio Installer Projects" (https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2017InstallerProjects) heruntergeladen.
Nachdem ich die Erweiterung heeuntergeladen hatte, habe ich in der Projektmappe meines Programms ein neues Projekt(siehe Bild 1) hinzugefügt.
Danach habe ich im "Application Folder" (siehe Bild 2) eine Projektausgabegruppe mit der "Primären Ausgabe" und der Kofiguration "(aktiv)", den Ordner wo ich alle Bild- und Sounddateien gespeichert habe (im Projektordner ist er unter "...\bin\Debug" gespeichert) und das Icon der Exe-Datei hinzugefügt. In den Ordnern "User's Desktop" und "User's Programs Menu" habe ich jeweils eine Verknüpfung zur Primär Ausgabe hinzugefügt.
Als ich damit fertig war habe ich die Batch dazu ertellt (siehe Bild 3) und im Debug Ordner von Setup1 erschienen eine Exe und eine MSI Datei.
Als ich die besagte Exe Datei ausführte, hat sich der Installer ganz normal geöffnet und mein Programm installiert. Jedoch wenn ich versuche das Programm zu starten - egal ob über der Verknüpfung am Desktop oder PrograM Menü der die Exe Datei selber im Programm Ordner - passiert gar nichts. Laut dem Task-Manager öffnet sich zwar kurz ein Prozess, schließt sich aber Direkt wieder. Wenn ich das Programm über den Projektordner von Visual Studio öffne, öffnet sich das Programm ganz normal, also warum funktioniert das nicht über die installierte Version des Programmes?
So sehen der Programm-Ordner und der Projekt-Ordner aus
Nach einigen hin und her propieren hab ich herausgefunden das der Installer funktioniert. Ich kann mein Programm bloß nicht vom Programme(x86) Ordner ausführen. Dies ist nur bei meinen Pc so, wenn ich es am Pc von meinen Freund installiere Funktioniert alles wie es. Ich habe mal als Test versucht meinen Projekt Ordner in den Programme(x86) Ordner zu kopieren und dann mein Programm auszuführen und es hat ebenfalls nicht geklappt. Wenn ich das Programm starte wenn der Projekt Ordner in meinen Benutzer Ordner ist funktioniert wieder alles. Wieso ist das so?
2 Antworten
Hier ein Tip von mir: Installiere das: https://wixtoolset.org/releases/ Damit kann man aus seinen kompilierten Visual Studio Programmen MSI Installationspakete erstellen. Sie benötigen einmal die WiX Toolset build tools und das Visual Studio Plugin.
Damit geht das ganze viel einfacher. Das ganze ist Freeware.
Zum Schluss hat man dann eine msi-Datei die man auch per Doppelklick installieren kann. Das MSI Installer Format hat den Vorteil das es für Windows zertifiziert ist.
Verwendest du eventuell absolute Pfade in deinem Programm? Falls ja, dann solltest du diese relativ machen.
Weiterhin: wenn du schon dabei bist einen Installer zu bauen, dann würde ich dort auch die Releaseversion und nicht die Debugversion reinpacken! (Also da Batch erstellen die Releasedinger anklicken und dann ...\bin\Release\ statt ..\bin\Debug)
Es funktioniert leider immer noch nicht. Was die Relative Pfade betrifft, im Programm habe ich @"src\Datei.png" geschrieben.
Ja ich verwende ausschließlich relative Pfade. Aber ich versuche mal die Exe Datei in der Releaseversion reinzupacken