[OPENSOURCE] Patcher v2 by Hanashi

03/16/2013 16:06 Hanashi#61
Quote:
Originally Posted by Pasi103 View Post
okay, jetzt gehts. lag wohl daran.

Edit: dann ist es aber buggy weil man kein update ausführen kann weil sonst dieser fehler auftritt wo ich gesagt hab
Nope, du musst nur die Projektversion in Visual Studio ändern ;)
03/16/2013 18:57 VIЯUZ#62
nach dem download der patchliste beendet sich der patcher?
MfG
03/16/2013 19:55 hast1995#63
Thank You Again Hanashi!!
Look At The Patcher... I Made Some Modifications
I Only Changed The Layout!
[Only registered and activated users can see links. Click Here To Register...]

Thank You
03/16/2013 19:58 M3k33#64
Nice :awesome:
03/16/2013 20:44 bobogeorge#65
Quote:
Originally Posted by Hanashi View Post
[Only registered and activated users can see links. Click Here To Register...]
Hallo Leute,

ich habe in letzter Zeit, über einen längeren Zeitraum, eine neue Version meines Patchers programmiert. Dieser Patcher läuft um einiges performanter als meine alte Version und bringt auch einige neue Features mit sich. Mehr dazu weiter unten.

Gliederung
  1. Features
  2. Voraussetzungen
  3. Download der Dateien
  4. Installation des Patchservers/der Weboberfläche
  5. Kompilieren des Patchers
  6. Benutzung der Weboberfläche
    1. Dateien verwalten
    2. Clientseitiges löschen
    3. Patchliste generieren/bearbeiten
    4. neue Patcherversion hochladen
  7. Bilder
  8. Lizenz
  9. Nachwort

1. Features
nach oben
  • performanter als der alte Patcher
  • Downloadstatus in der Taskbar
  • Funktion zum Automatischen Updaten des Patchers
  • komplett Opensource
  • Außerdem neu:
    • Weboberfläche zur Konfiguration des Patchers
      • verwalte deine Dateien direkt in der Weboberfläche
      • lösche Dateien, lade neue Dateien hoch
      • generiere die Patchliste
      • lade die neue Patcherversion hoch
      • Usermanagement zur Verwaltung der Weboberfläche

2. Voraussetzungen
nach oben
  • Visual Studio 2010 oder höher
  • einen Webserver mit Apache2 und PHP5 (dazu xml-, sqlite-, mhash- und zip-Erweiterung für PHP5)

3. Download der Dateien
nach oben
  1. Klicke [Only registered and activated users can see links. Click Here To Register...] um zu meiner GitHub-Repository zu gelangen.
  2. Lade die Dateien über den Button [Only registered and activated users can see links. Click Here To Register...] herunter. Du kannst auch ein Git-Clone machen, das werde ich aber hier nicht erklären.
  3. Nun wird eine Zip-Datei heruntergeladen.
  4. Diese Datei musst du nun entpacken und machst mit Punkt 4 weiter.

4. Installation des Patchservers/der Weboberfläche
nach oben
  1. Lade die Dateien aus dem Ordner Patchserver auf deinen Webserver hoch.
  2. Überprüfe ob folgende Ordner 777-Rechte haben
    • client/
    • filelist/
    • update/
    • admin/cache/
    • admin/cnf/
    • admin/cnf/db/
    • admin/tmp/
  3. Rufe nun die Datei admin/install.php in deinem Browser auf.
  4. Klicke auf den Button mit der Aufschrift "Install".
  5. Wenn die Installation erfolgreich war wird dies angezeigt. Lösche nun die Dateien install.php und tmpl/install.tpl.
  6. Nun kannst du dich in dem Pfad admin/ mit den Benutzernamen admin und dem Passwort admin123 einloggen.

5. Kompilieren des Patchers
nach oben
  1. Gehe in den Ordner Patcher und öffne die Datei Patcher.sln mit Visual Studio.
  2. Bearbeite die Datei Config.cs. Hier eine Erklärung der Variablen, auch wenn sie selbsterklärend sind:
    • HomepageURL gibt den Pfad zur Webseite deines Servers an.
    • ConfigurationEXE gibt den Namen der standardmäßig benannten config.exe an.
    • PatchserverURL gibt die URL zum Patchserver an.
    • BinaryName gibt den Namen der .bin Datei an.
  3. Drücke nun Strg+Shift+B um die komplette Projektmappe zu kompilieren.
  4. Als nächstes solltest du die Weboberfläche benutzen und den aktuellen Patcher hochladen.

[Only registered and activated users can see links. Click Here To Register...]
6. Benutzung der Weboberfläche
nach oben

6.1. Dateien verwalten
nach oben
  1. Melde dich an der Weboberfläche an.
  2. Solltest du nicht bei der Dateiverwaltung gelandet sein, nagiere im Menü zur Dateiverwaltung.
  3. Hier kannst du nun mit einen Klick auf Löschen hochgeladene Dateien vom Server löschen.
  4. Wenn du neue Dateien hochladen möchtest, musst du folgendes beachten.
  5. Es können nur Zip-Dateien hochgeladen werden.
  6. Die Zip-Dateien müssen einen Ordner namens client beinhalten. In diesem Ordner müssen die client-Dateien hierarchisch liegen, wie sie im Clientordner liegen.

6.2. Clientseitiges löschen
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Clientseitg löschen.
  2. Gebe nun einen Dateinamen ein und klicke auf Hinzufügen.
  3. Beim Nächsten Start des Patchers, werden die Dateien Clientseitig gelöscht.

6.3. Patchliste generieren/bearbeiten
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Patchliste.
  2. Hier kannst du nun nach Veränderung der Dateien, die Patchliste neu generieren oder manuell bearbeiten.

6.4. neue Patcherversion hochladen
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Patcherversion.
  2. Gib nun die neue Versionsnummer ein und klicke auf Hochladen um die neue Version auszuwählen.
  3. Die Version wird nun hochgeladen.
  4. Nach erfolgreichen Upload, wird beim Start des Patchers die neue Version heruntergeladen.
  5. Achtung: vergiss nicht die kompilierte Updater.exe in den Ordner update auf den Server hochzuladen.

7. Bilder
nach oben

8. Lizenz
nach oben

Der Code des Patchers und der Weboberfläche darf ohne nachfrage verändert und benutzt werden. Es ist nicht erlaubt Teile des Codes oder den ganzen Code zu verkaufen, außerdem ist es nicht erlaubt ohne Genehmigung einen Service zum Verkauf von Patchern mit diesen Code zu starten. Der Code ist weiterhin geistliches Eigentum von Hanashi.

9. Nachwort
nach oben

Der Patcher ist frei anpassbar, deswegen wurde von meiner Seite her keine große Mühe für ein ordentliches Design vorgenommen. Die derzeitige Oberfläche dient nur als Beispiel und darf natürlich verändert werden. Wer die Oberfläche kritisiert, sollte auch eine bessere zum Anschauen liefern ;)
Da ich sehr neugierig bin, wie ihr eure Patcher gestaltet, freue ich mich über Screenshots eurer Patcher.
Bitte vergesst nicht, dass die beiden DLLs, die im Debug- oder Release-Ordner liegen notwendig sind um den Patcher unter Windows 7 oder höher zu starten, insofern ihr die Funktionalität für den Status in der Taskbar nicht entfernt.
Ich wünsche euch viel Spaß mit dem Patcher. Dies wird natürlich nicht mein letzter sein und ich freue mich über Anregungen für neue Ideen.

Wenn ihr Fehler findet, bitte hier Posten: [Only registered and activated users can see links. Click Here To Register...]

LG Hanashi
Bitte stellen Sie ein Video zu verstehen, !!!!
03/16/2013 21:58 Hanashi#66
Quote:
Originally Posted by Pasi103 View Post
nach dem download der patchliste beendet sich der patcher?
MfG
Nutz mal die Debug-Funktion von Visual Studio, vielleicht findest du dadurch den Fehler, denn bei den Test funktioniert alles ohne Probleme.

Quote:
Originally Posted by bobogeorge View Post
Bitte stellen Sie ein Video zu verstehen, !!!!
Video wird noch folgen, aber derzeitig habe ich keine Zeit dafür.
03/16/2013 22:39 teamspirit#67
Quote:
Originally Posted by Pasi103 View Post
nach dem download der patchliste beendet sich der patcher?
MfG

Same here....
03/16/2013 22:40 Hanashi#68
Quote:
Originally Posted by teamspirit View Post
Same here....
Quote:
Originally Posted by Hanashi View Post
Nutz mal die Debug-Funktion von Visual Studio, vielleicht findest du dadurch den Fehler, denn bei den Test funktioniert alles ohne Probleme.
^this
03/17/2013 09:48 VIЯUZ#69
Also wenn Visual Studio aufgeht kommt:"Die Datei oder Assembly "Microsoft.WindowsAPICodePack.Shell, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden."
Und dann bei fehler ist vllt noch das hilfreich:"mscorlib.dll!System.Threading._ThreadPo olWaitCallback.PerformWaitCallback()
Patcher.exe!Patcher.MainWindow.ParsePatchlist()
Patcher.exe!Patcher.MainWindow.GetPatchlist.Anonym ousMethod__12(object param0, System.ComponentModel.AsyncCompletedEventArgs param1)
System.dll!System.Net.WebClient.OnDownloadFileComp leted(System.ComponentModel.AsyncCompletedEventArg s e)
System.dll!System.Net.WebClient.DownloadFileOperat ionCompleted(object arg)
mscorlib.dll!System.Threading.QueueUserWorkItemCal lback.WaitCallback_Context(object state)
mscorlib.dll!System.Threading.ExecutionContext.Run Internal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.dll!System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx)
mscorlib.dll!System.Threading.QueueUserWorkItemCal lback.System.Threading.IThreadPoolWorkItem.Execute WorkItem()
mscorlib.dll!System.Threading.ThreadPoolWorkQueue. Dispatch()
[Native to Managed Transition]"
03/17/2013 09:48 He3o Crysis#70
Quote:
Originally Posted by Hanashi View Post
Dann musst du die Authentifizierung umprogrammieren. Ersetz einfach alle mhash Funktionen mit md5-Funktionen.
Beispiel der Zeile 52 der install.php:
PHP Code:
$password bin2hex(mhash(MHASH_SHA512sprintf("%s%s"strtolower("admin"), "admin123"))); 
Die neue Zeile:
PHP Code:
$password md5(sprintf("%s%s"strtolower("admin"), "admin123")); 
Das ganze machst du auch noch in der User.class.php (in Zeile 16, 76, 110 und 140)
Sorry das ich das jetzt nochmal pushen muss, aber wollte nur sagen das die mhash funktion mit hash('sha512', $string); ebenfalls ersetzt werden kann. Hat mir aufjedenfall geholfen :D
03/17/2013 10:00 teamspirit#71
pic: [Only registered and activated users can see links. Click Here To Register...]

The specified file is not a valid application for this OS platform
03/17/2013 17:17 .SonY#72
does not the patch does not download the new files
03/18/2013 17:11 VIЯUZ#73
keine lösung?
03/18/2013 19:03 Steve T#74
Gut, gut gut, danke schön - Gerade rechtzeitig gefunden. :)
03/18/2013 21:33 salihf7#75
Quote:
Originally Posted by Hanashi View Post
[Only registered and activated users can see links. Click Here To Register...]
Hallo Leute,

ich habe in letzter Zeit, über einen längeren Zeitraum, eine neue Version meines Patchers programmiert. Dieser Patcher läuft um einiges performanter als meine alte Version und bringt auch einige neue Features mit sich. Mehr dazu weiter unten.

Gliederung
  1. Features
  2. Voraussetzungen
  3. Download der Dateien
  4. Installation des Patchservers/der Weboberfläche
  5. Kompilieren des Patchers
  6. Benutzung der Weboberfläche
    1. Dateien verwalten
    2. Clientseitiges löschen
    3. Patchliste generieren/bearbeiten
    4. neue Patcherversion hochladen
  7. Bilder
  8. Lizenz
  9. Nachwort

1. Features
nach oben
  • performanter als der alte Patcher
  • Downloadstatus in der Taskbar
  • Funktion zum Automatischen Updaten des Patchers
  • komplett Opensource
  • Außerdem neu:
    • Weboberfläche zur Konfiguration des Patchers
      • verwalte deine Dateien direkt in der Weboberfläche
      • lösche Dateien, lade neue Dateien hoch
      • generiere die Patchliste
      • lade die neue Patcherversion hoch
      • Usermanagement zur Verwaltung der Weboberfläche

2. Voraussetzungen
nach oben
  • Visual Studio 2010 oder höher
  • einen Webserver mit Apache2 und PHP5 (dazu xml-, sqlite-, mhash- und zip-Erweiterung für PHP5)

3. Download der Dateien
nach oben
  1. Klicke [Only registered and activated users can see links. Click Here To Register...] um zu meiner GitHub-Repository zu gelangen.
  2. Lade die Dateien über den Button [Only registered and activated users can see links. Click Here To Register...] herunter. Du kannst auch ein Git-Clone machen, das werde ich aber hier nicht erklären.
  3. Nun wird eine Zip-Datei heruntergeladen.
  4. Diese Datei musst du nun entpacken und machst mit Punkt 4 weiter.

4. Installation des Patchservers/der Weboberfläche
nach oben
  1. Lade die Dateien aus dem Ordner Patchserver auf deinen Webserver hoch.
  2. Überprüfe ob folgende Ordner 777-Rechte haben
    • client/
    • filelist/
    • update/
    • admin/cache/
    • admin/cnf/
    • admin/cnf/db/
    • admin/tmp/
  3. Rufe nun die Datei admin/install.php in deinem Browser auf.
  4. Klicke auf den Button mit der Aufschrift "Install".
  5. Wenn die Installation erfolgreich war wird dies angezeigt. Lösche nun die Dateien install.php und tmpl/install.tpl.
  6. Nun kannst du dich in dem Pfad admin/ mit den Benutzernamen admin und dem Passwort admin123 einloggen.

5. Kompilieren des Patchers
nach oben
  1. Gehe in den Ordner Patcher und öffne die Datei Patcher.sln mit Visual Studio.
  2. Bearbeite die Datei Config.cs. Hier eine Erklärung der Variablen, auch wenn sie selbsterklärend sind:
    • HomepageURL gibt den Pfad zur Webseite deines Servers an.
    • ConfigurationEXE gibt den Namen der standardmäßig benannten config.exe an.
    • PatchserverURL gibt die URL zum Patchserver an.
    • BinaryName gibt den Namen der .bin Datei an.
  3. Drücke nun Strg+Shift+B um die komplette Projektmappe zu kompilieren.
  4. Als nächstes solltest du die Weboberfläche benutzen und den aktuellen Patcher hochladen.

[Only registered and activated users can see links. Click Here To Register...]
6. Benutzung der Weboberfläche
nach oben

6.1. Dateien verwalten
nach oben
  1. Melde dich an der Weboberfläche an.
  2. Solltest du nicht bei der Dateiverwaltung gelandet sein, nagiere im Menü zur Dateiverwaltung.
  3. Hier kannst du nun mit einen Klick auf Löschen hochgeladene Dateien vom Server löschen.
  4. Wenn du neue Dateien hochladen möchtest, musst du folgendes beachten.
  5. Es können nur Zip-Dateien hochgeladen werden.
  6. Die Zip-Dateien müssen einen Ordner namens client beinhalten. In diesem Ordner müssen die client-Dateien hierarchisch liegen, wie sie im Clientordner liegen.

6.2. Clientseitiges löschen
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Clientseitg löschen.
  2. Gebe nun einen Dateinamen ein und klicke auf Hinzufügen.
  3. Beim Nächsten Start des Patchers, werden die Dateien Clientseitig gelöscht.

6.3. Patchliste generieren/bearbeiten
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Patchliste.
  2. Hier kannst du nun nach Veränderung der Dateien, die Patchliste neu generieren oder manuell bearbeiten.

6.4. neue Patcherversion hochladen
nach oben
  1. Gehe zur Weboberfläche und Klicke auf Patcherversion.
  2. Gib nun die neue Versionsnummer ein und klicke auf Hochladen um die neue Version auszuwählen.
  3. Die Version wird nun hochgeladen.
  4. Nach erfolgreichen Upload, wird beim Start des Patchers die neue Version heruntergeladen.
  5. Achtung: vergiss nicht die kompilierte Updater.exe in den Ordner update auf den Server hochzuladen.

7. Bilder
nach oben

8. Lizenz
nach oben

Der Code des Patchers und der Weboberfläche darf ohne nachfrage verändert und benutzt werden. Es ist nicht erlaubt Teile des Codes oder den ganzen Code zu verkaufen, außerdem ist es nicht erlaubt ohne Genehmigung einen Service zum Verkauf von Patchern mit diesen Code zu starten. Der Code ist weiterhin geistliches Eigentum von Hanashi.

9. Nachwort
nach oben

Der Patcher ist frei anpassbar, deswegen wurde von meiner Seite her keine große Mühe für ein ordentliches Design vorgenommen. Die derzeitige Oberfläche dient nur als Beispiel und darf natürlich verändert werden. Wer die Oberfläche kritisiert, sollte auch eine bessere zum Anschauen liefern ;)
Da ich sehr neugierig bin, wie ihr eure Patcher gestaltet, freue ich mich über Screenshots eurer Patcher.
Bitte vergesst nicht, dass die beiden DLLs, die im Debug- oder Release-Ordner liegen notwendig sind um den Patcher unter Windows 7 oder höher zu starten, insofern ihr die Funktionalität für den Status in der Taskbar nicht entfernt.
Ich wünsche euch viel Spaß mit dem Patcher. Dies wird natürlich nicht mein letzter sein und ich freue mich über Anregungen für neue Ideen.

Wenn ihr Fehler findet, bitte hier Posten: [Only registered and activated users can see links. Click Here To Register...]

LG Hanashi
Bitte um Hilfe Installation war nicht erfolgreich
[Only registered and activated users can see links. Click Here To Register...]