Autor Beitrag
Cäptin Pommes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Di 09.02.10 22:16 
Hallo,

Ich habe ein Spiel programmiert mit dem XNA Framework und versuche nun schon die ganze zeit das Framework mit in den Installer zu packen. Ich hab schon ne ganze menge tools probiert zum Installer erstellen aber irgentwie bekomm ich das nicht hin :/

Also wenn jemand weiss wie man das macht währe toll wenn er mich an dem Wissen teilhabenlässt ;)


Moderiert von user profile iconChristian S.: Topic aus C# - Die Sprache verschoben am Di 09.02.2010 um 21:21
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Di 09.02.10 22:23 
Hat das Framework einen eigenen Installer?

InnoSetup, das Framework ins Temp Verzeichnis entpacken, und beim Setup aufrufen lassen, Abschnitt [Run]

_________________
PROGRAMMER: A device for converting coffee into software.
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Di 09.02.10 22:39 
ja es hat einen Installer, aber wie sol ich das den entpacken? Ich kann es höstens installienr aber da kann ich kein pfad angeben

oder wie meinst du das?
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Di 09.02.10 22:45 
Hm?

Wenn ich bei meinen Anwendungen einige Voraussetzungen mitinstallieren muss, mach ich das so:
- Zusätzlichen Installer mit installieren, Zielverzeichnis: {tmp}
- Unter Run noch eintragen, dass {tmp}\MyInstaller.exe gestartet werden soll.

Edit:
Beispiel

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
[Files]
Source: ..\USBTreiber\CDM 2.04.06.exe; DestDir: {tmp}; Components: USBDriver


[Run]
Filename: {tmp}\CDM 2.04.06.exe; WorkingDir: {tmp}; Components: USBDriver

In deinem Fall kann es sein, dass der Benutzer sich noch selber durch das Setup klicken muss, aber da wirst du wohl nicht viel machen können, es sei denn der Installer unterstützt einen Silent-Modus.

_________________
PROGRAMMER: A device for converting coffee into software.
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Di 09.02.10 23:36 
hab das jetzt versucht:

ausblenden Quelltext
1:
2:
3:
4:
5:
[Files]
...\bin\x86\Debug\xnafx31_redist.msi; DestDir: {tmp}

[Run]
Filename: {tmp}\xnafx31_redist.msi; WorkingDir: {tmp}


hat aber nicht geklappt da sagt er mir:

Could not copy "C:\.... bla bla bla...\SETUPLDR.E32" to "C:\....bla bla bla....\Output\setup.exe". Error 5: Zugriff verweigert.
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Di 09.02.10 23:51 
Klingt eher so, als würde da was anderes nicht stimmen..
Entweder, er kann eine andere Datei nicht finden, oder du hast keine Schreibrechte im Output Verzeichnis

_________________
PROGRAMMER: A device for converting coffee into software.
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Mi 10.02.10 07:28 
also ohne das macht er das aber. Also wenn ich nur mein Programm in ein Installer mache
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1581
Erhaltene Danke: 279


Delphi 10 Seattle Prof.
BeitragVerfasst: Mi 10.02.10 09:36 
Die Fehlermeldung heißt ja eigentlich nur, dass er die Setup.exe nicht erstellen kann.
Er packt erst mal alles in eine temporäre Datei zusammen und kopiert es dann als Setup.exe ins OutputDir. Das kann mit der Installation der MSI eigentlich nichts zu tun haben. Es sei denn, Deine Festplatte ist z.B. so voll, dass es mit einer kleinen Setup.exe ohne die MSI noch passt und mit der MSI zu groß ist.

Edit: Im [RUN] musst Du bei einer MSI noch das Flag Shellexec angeben. Bei mir sieht das z.B. so aus:
ausblenden Quelltext
1:
Filename: {tmp}\CR\CRS_German.MSI; StatusMsg: Installiere Bla Runtime. Dies kann einige Minuten in Anspruch nehmen.; Flags: shellexec waituntilterminated; Check: DoCRInstall					

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Mi 10.02.10 16:39 
also speicherplatz is mehr als genug vorhanden :)

und was checkt er mit Check: DoCRInstall?
und brauch ich denn jetzt kein WorkingDir: {tmp}; mehr? (weil in deinem beispiel is das ja nicht drin)
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Mi 10.02.10 19:49 
also ich hab das jetzt mit dem Flag gemacht aber es kommt die gleiche fehlermeldung
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Mi 10.02.10 19:58 
Nochmal: Das liegt nicht (direkt) am XNA Framework.

Fehler 5 bedeutet wirklich, dass der Zugriff auf die Zieldatei (also das Setup, das gerade gebaut wurde) verweigert wurde.
Mal ganz blöd gefragt: Läuft das Setup noch / schon?
Wenn nicht: Gibt es den Ordner Output an der erwarteten Stelle?

Ansonsten, mehr Input. Welches OS, welche Inno Setup Version? Benutzt du das IS Tool?
Was passiert, wenn du IS als Admin startest?

_________________
PROGRAMMER: A device for converting coffee into software.
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Mi 10.02.10 20:11 
Also ich hab Windows7 64bit

ISTool version: 5.3.0.1
InnoSetup: unterstützte version: 5.3.0
installierte version: 5.3.7

und diesen Output ordner scheint es wirlich nicht zu geben wie ich gerade festgestellt habe, aber ich hab ihn per hand hinzugefügt und es hat leider nix gebracht.
Cäptin Pommes Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 142
Erhaltene Danke: 2



BeitragVerfasst: Mi 10.02.10 21:03 
so ich habs hinbekommen :)

ich musste den Output ordner wo anders hinverlegen und noch irgent so ne einstellung ändern jeden falls gehts jetzt :)

danke für die hilfen
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1581
Erhaltene Danke: 279


Delphi 10 Seattle Prof.
BeitragVerfasst: Do 11.02.10 08:11 
user profile iconCäptin Pommes hat folgendes geschrieben Zum zitierten Posting springen:

und was checkt er mit Check: DoCRInstall?

Nur um es vollständig zu machen: Man kann in der Section Code eigene Funktionen schreiben. Diese Funktion prüft, ob diese Runtime überhaupt installiert werden muss, oder ob es schon installiert ist (dann kann man sich die Installation sparen). Gibt die Funktion, die man bei Check: angibt True zurück, dann wird die Zeile ausgeführt, gibt sie false zurück, dann wird sie nicht ausgeführt.
Du kannst das Check: DoCrInstall also einfach weglassen.

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)
Xentar
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2077
Erhaltene Danke: 2

Win XP
Delphi 5 Ent., Delphi 2007 Prof
BeitragVerfasst: Do 11.02.10 10:08 
user profile iconCäptin Pommes hat folgendes geschrieben Zum zitierten Posting springen:
ich musste den Output ordner wo anders hinverlegen und noch irgent so ne einstellung ändern jeden falls gehts jetzt :)

Ich kann ja immer noch nicht glauben, dass das in exakt diesem Ordner, mit exakt den selben Einstellungen, funktioniert, wenn du das XNA Framework weggelassen hast.

Aber lass mich raten: Output war ein Unterverzeichnis in Programme, z.B. "c:\Programme\InnoSetup\MeinSkript\Output" ? Deswegen meine Frage, was passiert, wenn du IS als Admin ausführst.

_________________
PROGRAMMER: A device for converting coffee into software.