Updates per Reflection/Updates allgemein

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

M0rgenstern

Betreff: Updates per Reflection/Updates allgemein

BeitragDi, März 15, 2011 19:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,
Ich habe heute ein Kapitel in nem Buch über C# gelesen, das Reflections behandelt. Man kann mit C# auf Methoden in Dateien zugreifen und diese auch ersetzen (durch Reflection). Da stand dann auch, dass man damit relativ einfach Programme updaten kann.
Habe da ein wenig drüber nachgedacht und mir ist aufgefallen: Ich habe mir noch nie überlegt, wie ich Programme updaten oder patchen könnte.
Jetzt stellt sich mir die Frage: Kann man per Reflection in BMax auch Methoden abändern oder geht das dort nicht. Und: Wie macht ihr das allgemein mit Programmupdates, denn selbst wenn man Methoden verändert müsste ja die .exe neu kompiliert werden, damit das auch wirksam wird, oder?
Kann mir vielleicht jemand auf die Sprünge helfen?

Lg, M0rgenstern

Thunder

BeitragDi, März 15, 2011 21:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Von Reflection habe ich keine Ahnung (sollte ich mir Mal anschauen), aber Programme zu patchen ist imho nur dann sinnvoll, wenn das reine Ersetzen der Dateien in die hundert Megabyte oder gar Gigabyte gehen würde.
Wenn man ein Spiel programmiert, schreibt man allerdings auch normalerweise eine Schnittstelle über die schnell Erweiterungen (neue Levels, neue Waffen ...) eingebaut werden können (z.B. Lua-Interface). Dann lassen sich sehr leicht Patches vornehmen, wenn man das dann noch so nennen will.
Und natürlich musst du die Exe neukompilieren, damit deine Änderungen im Code wirksam werden - unabhängig davon, ob das jetzt eine Methode ist, oder eine neue globale Variable... (wie das mit Reflection ausschaut, weiß ich wie gesagt nicht)

mfg Thunder
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

ToeB

BeitragDi, März 15, 2011 21:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Patches sind halt nur die Dateien die neu sind. Also du bringst jetzt ne neue version raus, mit neuen Leveln, neuen Grafiken und verbesserung des Spiels. Jetzt legst du fest, welche Dateien neu sind (das kannst du einfach in einem Rar-Archiv machen oder per Datenbank, wie du willst). Jetzt kann entweder der Benutzer selber sich das runterladen und Patchen oder du schreibst einen Updater, der auf eine Datenbank zugreift, in der die Versionsnummer und z.B. der Link zu dem Rar Archiv drin ist, lädst es automatisch runter und entpackst es richtig.

So würd ich es machen, wäre am kofortabelsten.


mfg ToeB
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

BtbN

BeitragMi, März 16, 2011 15:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Reflection framework von .NET hat nur begrenzt gemeinsamkeiten mit dem murks von BlitzMax.
 

Macintosh

BeitragMi, März 16, 2011 15:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein. Blitzmax kann keine Klassden oder methoden oder Funktionen aus dateien lesen.
Du kannst ja auch keine methoden zur Laufzeit an eine klasse hängen.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group