[Tool] WCS DVD Launcher
WCS DVD Launcher
Bitte Lesezeichen im Browser und/oder Links in anderen Foren oder Webseiten anpassen.
Das WCS Deutsch Team
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Die Frage ist, bevor ich mich da ransetze, kennt jemand hierzu einfache wege?
Meine Idee war es:
der Button Launch WCSAGA startet eine Batch-Datei.
Diese greift auf die Registry zu und exportiert den Wert für den Wing commander saga in eine textdatei aus.(klappt)
Diese Textdatei wird nun auf den pfad gekürzt und einer variable zugeordnet.(okay das muss ein For befehl sein mit token und delims)
Die Textdatei wird gelöscht.(ist klar)
Danach wird die variable gestartet. (auch klar)
Wie gesagt: Momentan happere ich noch beim Kürzen der Textdatei auf die Pfadangabe, um diese der Variable zu übergeben. Ideen, Anregungen gerne willkommen.
Zuerstmal Danke für Deine Idee und Dein Mitdenken.
laraan schrieb: hey mal so ne bloede frage, koenntest du nicht ne art "Launch WCSAGA"-Funktion einbinden? Wäre noch das i-tüpfelchen. Musste selber erst grübeln, wie man sowas umsetzen kann.
Das hatte ich bereits beim Konzept fest eingeplant und auch schon Code dafür eingebaut, aber aus einem simplen Grund wieder verworfen: Das Setup zu WCS erlaubt nicht nur die erstmalige Installation, sondern offenbar auch ein Update bzw. eine Reparatur. Mit dem "Launch" Button, den ich übrigens lieber "Play" oder "Run" Button getauft hätte, würde man diese Möglichkeit blockieren. Sonst wäre das schon längst drin.
Noch ein Wort bez. warum nicht "Launch": Das installierte WCS hat bereits einen Launcher. Da ist das Wort Launch schon vorhanden. In diesem Launcher wird das Spiel mit "Run" gestartet. Um hier ein wenig für eine "konsequente" Betitelung zu sorgen, wäre es nicht so eingängig, würde innerhalb des WCS Launchers nochmal das "Launch" vorkommen. Deswegen dann lieber "Play" oder gleich wie beim WCS Launcher "Run". Weisst was ich meine?
Die schwierigkeit besteht von meinen Verständnis ja darin, den Pfad des Spiels zu bestimmen. Das das automatisch erfasst und ausgegeben wird habe ich schon hingekriegt. Nur es auf eine brauchbare Pfadangabe zu kürzen, da happert es noch.
Die Frage ist, bevor ich mich da ransetze, kennt jemand hierzu einfache wege?
[s:uoquj50p]Vor allem wegen dem verwendeten Installer besteht die Schwierigkeit direkt auf den Pfad zuzugreifen. Denn leider hat sich das WCS Team für den MSI Installer entschieden den ich aus verschiedenen Gründen abgrundtief hasse.[/s:uoquj50p] Es gäbe durchaus einen direkten Pfad, nämlich "HKEY_LOCAL_MACHINE\SOFTWARE\Wing Commander Saga". Nur ist der blöderweisse eben im HKLM Pfad, dass heisst das Setup muss als Admin ausgeführt werden und ich weiss gerade nicht ob man WCS auch ohne Adminrechte installieren kann!? Das müsste man noch klären und vor allem wo dann der Pfad gespeichert wird.
Meine Idee war es:
der Button Launch WCSAGA startet eine Batch-Datei.
Diese greift auf die Registry zu und exportiert den Wert für den Wing commander saga in eine textdatei aus.(klappt)
Diese Textdatei wird nun auf den pfad gekürzt und einer variable zugeordnet.(okay das muss ein For befehl sein mit token und delims)
Die Textdatei wird gelöscht.(ist klar)
Danach wird die variable gestartet. (auch klar)
"Er hat das böse Wort gesagt", wenn ich mal Arrow (in einem anderen Kontext) zitieren darf. Ich meine "Batch".
Ja, mit Batch kann man unglaublich viel machen. Und ja, auch die Registry kann man auslesen und Werte in Umgebungsvariablen schreiben. Habe ich schon selbst so gemacht mit FOR, weil es tatsächlich mal so bei einem Kunden gefordert wurde. Und nein, ich werde kein Batch-Gefrickel in den WCS Launcher einbauen! Nicht falsch verstehen. Ich hab 1984 mit DOS 1.0 angefangen und ich kann auch heute noch mit Batch umgehen, aber Du weisst selbst das Batch ein furchtbares Gefrickel ist und zudem höchst anfällig wenn es auf verschiedenen Windows Varianten laufen soll. Ich schätze Deine Batch-Kenntnisse, denn dieses "Problem" per Batch zu lösen ist wirklich nicht trivial. Aber im WCS Launcher will ich sowas nicht haben, da viel zu anfällig.
Wie]gesagt: Momentan happere ich noch beim Kürzen der Textdatei auf die Pfadangabe, um diese der Variable zu übergeben. Ideen, Anregungen gerne willkommen.
Wir überlegen uns lieber was, um das im WCS Launcher direkt einzubauen. Denn ich habe mir schon vor vielen Jahren eine eigene Registry-Bibliothek geschrieben mit der ich super komfortabel auf die Registry zugreifen kann und das von Windows 95 bis Windows 7 ohne dutzende WENNs und ABERs wie bei Batch.
Eine Idee wäre: Ist das Spiel bereits installiert und der Install Button wird gedrückt, könnte man einen kleinen Requester einblenden der danach frägt ob man WCS installieren oder starten will.
Eine weitere Idee wäre: Unter dem Install Button noch einen weiteren festen Button definieren, eben den Play Button, der zwar erscheint, aber nur dann aktiviert wird, wenn WCS bereits installiert ist.
Was meinst Du laraan?
Edit: Falschaussage als solche markiert.
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Tolwyn schrieb: Das ist nicht ganz richtig. Wir nutzen keinen MSI Wrapper
Ahso? Weil sich der Installer in Pfaden einträgt, die normalerweise vom MSI verwendet werden. Inklusive den "kryptischen" Schlüssel-Werten.
und das Spiel legt sehr wohl ein Registry Key GamePath unter HKLM ab.
Hab ich doch geschrieben. Und genau das ist das Problem, denn auf diesen Pfad hat man nur mit Admin-Rechten Schreib-Zugriff. Wie läuft die Installation mit einem User-Account?
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Tolwyn schrieb: Der Installer läuft nur mit Adminrechten.
Jupp, gerade mit Win 7 in einer VM probiert. Ok, d.h. also, das wir diesen Reg Pfad auf jeden Fall vorfinden. Prima, DAS wäre dann schon mal geklärt und der Rest ist Fleissarbeit.
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
1. Ist WCS noch nicht installiert, wird im ersten Button "Install" angezeigt und der "Run" Button deaktiviert.
2. Ist WCS bereits installiert, wird im ersten Button "Upgrade" angezeigt und der "Run" Button aktiviert.
Natürlich wieder flexibel, was die Beschriftungen angeht:
[spoiler:axc5g4el];Standard
[Main]
var_insup_install=Install
var_insup_update=Upgrade
[Buttons]
Button0Caption=Cancel
Button1Caption=$VAR_INSUP$ Wing Commander Saga
Button2Caption=Run Wing Commander Saga
Button3Caption=Show Launch Trailer
Button3Action=trailer\wcs_launch_trailer.mp4
Button4Caption=Show Feature Trailer
Button4Action=trailer\wcs_feature_trailer.mp4
Button5Caption=Visit Wing Commmander Saga Website
Button5Action=http://www.wcsaga.com Button aktiviert.[/spoiler:axc5g4el]
Erzeugt dann je nach Situation folgendes:
Edit: Bilder gelöscht, siehe Haupt-Post. (Luke 31.03.2012 00:15:11)
Ahja und Versionsinfos auf Release geändert, also V1.0.x und bei Hauptbuttons fette Schrift eingestellt.
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
ob man es jetzt Launch, Run oder Play nennt, ist mir eigentlich egal. Idee dahinter ist ein einfacher Startbutton. Wenn der Wing Commander Saga Installer weiterhin benötigt wird, wäre ich für einen 2. Button, der im Zweifel ausgegraut wird.
Und wegen der Batch Datei, ja mei, ich habe keine gravierenden Programmierkenntnisse, bei uns im Studium ist das auch eher ein Nebending...
Batch-Dateien nutze ich hingegen häufiger, bzw. die Windows Kommandozeile, da ich mit der häufige Fehlerquellen ausmerzen kann oder zusammen mit der Aufgabenplanung einfache Routine Sachen verarbeiten kann, wie Kopien von Wichtigen Daten beim Abschalten des Rechners. Nutze Batchdateien auch gerne für größere FTP-Uploads, die ich aus der FH machen muss.
Die Idee das mit ner Batchdatei zu machen, war jetzt auch nur vorhanden, da ich nicht weiss, wie man aus JAVA(<- der einzigen Programmiersprache, die ich so oberflächlich kenne) auf die Registry zugreifen kann.
Bei ner Batchdatei ist das Rauslesen + Komprimieren des Startpfades + Start von WCSAGA 4 Zeilen "Code". (das export aus der Registryklappt bei mir unter xp - sieben, der befehl und die Struktur der registry ändern sich bei windows ja nicht so gravierend(sind jedenfalls noch keine gravierenden Änderungen im Aufbau aufgefallen), und im Traum sind mir die REGEXP eingefallen, mit denen das extrahieren des Gamepfades aus der Datei jetzt sogar auch klappt ).
Aber wie gesagt, aus Ermangelung von Kenntnissen über andere Wege, hätte ich das so gemacht. Deine Lösung ist aber deutlich besser.
Muss ich dir aber Rechtgeben, dass der zugriff auf die Registry natuerlich nur mit Adminrechten läuft. In 95% der Fälle aber aller Benutzer von Windows Sieben, die ich kenne, haben ihr Standardkonto mit Adminrechten ausgestattet.
Mein System zum Zocken ist da eingeschlossen, ist aber dafür komplett von meinen Daten auf den anderen Betriebssystemen getrennt.
Weiterhin eine Problematik von Batchdateien ist, dass von vielen aber auch Batchdateien die dann Adminrechte brauchen, als Sicherheitsrisiko gesehen werden. Besonders wenn Sie auf die Registry zugreifen.
Ne mit den Dosbefehlen kenne ich mich noch nicht so lange aus. Habe mich da mal mit beschäftigt um nen automatisierten FTP Download zu initieren, um ein Terminal, was ich im Rahmen eines Studienprojektes konstruiert habe, 1x im Monat mit neuem Content zu füttern und mit Taskkill den Browser dann neuzustarten. Kannte bis vor dem Projekt nur die Grundlegenden Befehle um durch dos zu navigieren, zu pingen, etc. den kleinkram eben
Während ich das alles geschrieben habe, habe jetzt gerade deinen neuen Eintrag gesehen. Finde ich Sehr gut so.
laraan schrieb: moin Luke,
ob man es jetzt Launch, Run oder Play nennt, ist mir eigentlich egal.
Was Details angeht bin ich nunmal ein Tintenpisser, das bringt der Beruf einfach mit sich.
Und wegen der Batch Datei, ja mei, ich habe keine gravierenden Programmierkenntnisse, bei uns im Studium ist das auch eher ein Nebending...
Batch-Dateien nutze ich hingegen häufiger, bzw. die Windows Kommandozeile, da ich mit der häufige Fehlerquellen ausmerzen kann oder zusammen mit der Aufgabenplanung einfache Routine Sachen verarbeiten kann, wie Kopien von Wichtigen Daten beim Abschalten des Rechners. Nutze Batchdateien auch gerne für größere FTP-Uploads, die ich aus der FH machen muss.
Nur um das klarzustellen: Wie gesagt, ich schätze Deine Batch-Kenntnisse, weil ich das selbst auch kenne und speziell in dem Fall mit Registry auch weiss WIE Du es machst.
Die Idee das mit ner Batchdatei zu machen, war jetzt auch nur vorhanden, da ich nicht weiss, wie man aus JAVA(<- der einzigen Programmiersprache, die ich so oberflächlich kenne) auf die Registry zugreifen kann.
In meiner Lieblingssprache mit der der Launcher entstanden ist, habe ich im Prinzip unbegrenzte Möglichkeiten weil ich je nach Funktion direkt auf die Windows API zugreife. Wenn Du schon oberflächlich Java kennst, wirst mir zustimmen dass das mit Batch bezüglich Komplexität und Möglichkeiten überhaupt nicht zu vergleichen ist. Allerdings ist der Vergleich auch unfair. Java ist eine Programmiersprache, Batch ist eine Automations-Skript-Sprache. Das kann man einfach nicht vergleichen.
Bei ner Batchdatei ist das Rauslesen + Komprimieren des Startpfades + Start von WCSAGA 4 Zeilen "Code". (das export aus der Registryklappt bei mir unter xp - sieben, der befehl und die Struktur der registry ändern sich bei windows ja nicht so gravierend(sind jedenfalls noch keine gravierenden Änderungen im Aufbau aufgefallen)
Naa, es geht nicht um die Registry. Es geht explizit um die Möglichkeiten bei Batch. Die ganzen erweiterten String-Manipulationen die man ab W2K hat, sind unter 9x z.B. nur rudimentär oder gleich gar nicht vorhanden. Darum taugt Batch auch absolut und überhaupt nicht um Versionsübergreifende (was Windows angeht) Lösungen damit zu schreiben.
Muss ich dir aber Rechtgeben, dass der zugriff auf die Registry natuerlich nur mit Adminrechten läuft.
Na lesen in HKLM ist grundsätzlich auch mit einem User-Account möglich, aber schreiben eben nicht. Und meine Befürchtung ein paar Postings vorher war eben, dass WCS evtl. auch mit einem User-Account installiert werden könnte, was Tolwyn ja aber bereits negiert hat. Wäre dem so, hätten wir den GamePath unter HKLM nämlich nicht zur Verfügung.
Weiterhin eine Problematik von Batchdateien ist, dass von vielen aber auch Batchdateien die dann Adminrechte brauchen, als Sicherheitsrisiko gesehen werden. Besonders wenn Sie auf die Registry zugreifen.
Jupp, eines von vielen Problemen. Ausserdem sieht es designtechnisch geradezu furchtbar aus, wenn ein Windows Programm sichtbar einen Batch starten muss um irgendeine Aufgabe zu lösen. Brrrrrr. Und im Falle des WCS Launchers ja auch gar nicht nötig.
Ne mit den Dosbefehlen kenne ich mich noch nicht so lange aus. Habe mich da mal mit beschäftigt um nen automatisierten FTP Download zu initieren, um ein Terminal, was ich im Rahmen eines Studienprojektes konstruiert habe, 1x im Monat mit neuem Content zu füttern und mit Taskkill den Browser dann neuzustarten. Kannte bis vor dem Projekt nur die Grundlegenden Befehle um durch dos zu navigieren, zu pingen, etc. den kleinkram eben
Hmm, soviel wie Du mit Batch machst, wäre eigentlich AI3 (AutoIt3) eine geniale Sprache für Dich. Ich habe schon zwei Profi DOS Batchler zu AI3 gebracht und die schreiben heute Programme damit, da kann ich nur noch mit heruntergeklapptem Kiefer staunen. Es sei denn natürlich, Du musst das mit Batch lösen, also nur mit Bordmitteln, dann ist das was anderes. Ansonsten ist AI3 zum programmieren gegenüber Batch traumhaft und es gibt auch eine komfortable IDE dafür. Nur so am Rande.
Während ich das alles geschrieben habe, habe jetzt gerade deinen neuen Eintrag gesehen. Finde ich Sehr gut so.
Ist jetzt im Prinzip eine Kombination aus unserer beiden Ideen. Könnte man mit dem WCS Setup wirklich nur erstmalig installieren, hätte ich das wie von Dir vorgeschlagen mit dem Play Button realisert.
Gibst mir mal Deine E-Mail Adresse per PM? Dann würde ich Dir die aktuelle Version zum testen schicken.
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Die nächste Version wird folgendes haben:
- Bugfixes.
- Statt den Buttons "Install/Upgrade" und "Run" wird es nur noch einen Button "Install/Play" geben. Ich hab WCS mal neu installiert und festgestellt, dass die Funktion Upgrade so nicht wirklich genutzt werden kann. Das heisst der oberste Button wird bei nicht installiertem WCS "Install" anbieten und bei bereits installiertem WCS stattdessen "Play". [Vorschlag von: laaran (war auch ursprünglich mal von mir so gedacht gewesen)]
- Es wird unten links einen neuen Button "Patches" geben für Patches die lokal auf der DVD vorhanden sind.
- Es wird in der Standard INI ein Button mit der URL der offiziellen WCS Patches Seite geben. [Vorschlag von: Aginor]
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Edit: Infos, Bilder und Donwload gelöscht. Siehe Haupt-Post. (Luke 31.03.2012 00:17:05)
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
Bei neuen Versionen des Launchers wird das Zip Archiv nicht mehr an einen neuen Post angehängt, sondern prinzipiell immer der Download im Haupt-Post aktualisiert. Das gleiche gilt für neue Bilder des Launchers, diese werden auch nur noch im Haupt-Post aktualisiert. Auch sämtliche wichtigen Infos zum Launcher werden im Haupt-Post konzentriert. Somit kann der Thread so genutzt werden wie es gedacht war, nämlich zum diskutieren. Das macht die Sache für jeden einfacher, ist deutlich übersichtlicher und spart auch Speicherplatz.
Tools: Setup ZIP Check & UnZip / EPW-Bug Repair Tool / Debug-Build Support-Tool / Pilot Manager ...und andere
Projekte: Deutsch-Mod / WCS+
- maltinator
- Offline
- Gold Boarder
- Beiträge: 218
- Dank erhalten: 0