Seite 2 von 32 ErsteErste 12345612 ... LetzteLetzte
Ergebnis 16 bis 30 von 473

Thema: Debug-Dll

  1. #16
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009

    Idee Debug-Dll

    Nach all den Jahren wollte ich heute mal versuchen, diesen Anlauf selbst umzusetzen - und scheitere schon bei Punkt 1. Visual C++ 2008 EE ist nämlich bei dem Link nicht mehr verfügbar, 2010 ist das älteste. Kann man das auch benutzen? Geht dann alles genauso? Oder habe ich nur irgendetwas übersehen, wo man es downloaden kann?

  2. #17
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    Ich arbeite mit der 2010 Version. Es hat sich nichts wesentliches an der Oberfläche geändert.

  3. #18
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    Falls es Probleme mit dem wandeln von den 2008 Projektdateien zu 2010 gibt, hänge ich mal meine Projektdateien ohne Code an.

    Die verlinkten Codedateien, sowei das Makefile, müssten angepasst werden.
    Geändert von rucivfan (06. Juli 2013 um 16:16 Uhr)

  4. #19
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009
    Danke, Rucivfan, ich hatte nämlich tatsächlich ein Problem nach der Umwandlung.

    Eine Frage habe ich jetzt noch: unter Header-Files und Resouce-Files sind ja jetzt in deiner Projektmappe vermutlich die BASE-Dateien. Wie bekomme ich die von mir heruntergeladenen des andere Projektes da rein? Das Makefile erklärt sich ja fast von selbst (und den Rest erklärt Deepwater), aber Codedateien? Wo müssen die stehen?

  5. #20
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    Zitat Zitat von Kathy Beitrag anzeigen
    Ich meinte vor allem auch RayStuttgarts hinweis, dass mir die .dll alleine nichts nützt, wenn ich keine Entwicklungsumgebung habe.
    Normalerweise hast du als Entwicklungsumgebung sowas wie Visual Studio C++ 2010.
    Über das erstellst du deine Debug-DLL aus dem Source-Code.

    Wenn du die Debug-DLL hast, kannst du diese einfach anstatt der normalen DLL einfügen und das Spiel bzw. deine Mod starten.

    Danach minimierst du das Spiel und hängst deine Entwicklungsumgebung an den laufenden Prozess des Spiels.
    Hast du das Spiel im Fenstermodus laufen, kannst du jetzt alle möglichen Dinge tun.
    Haltepunkte setzen, Schrittweise die aufgerufenen Methoden durchklicken, den Stack untersuchen, ...

    Oder du lässt das Speil einfach laufen und wartest auf einen Fehler, den dann normalerweise dazu führt, dass die Debug-DLL das Spiel anhält, damit du untersuchen kannst.
    Dann wechselst du zu deiner Entwicklungsumgebung und fängst mit der detaillierten Untersuchung an.

    Aber um das nochmal klar zu stellen:
    Das ist nichts, was man mal so kurz nebenbei ohne irgenwelche Kenntnisse bezüglich Programmierung oder Nutzung einer Entwicklungsumgebung tut.

    Tutorials gibt es da einige dazu.
    Die hab ich aber nie gelesen und kann dazu deshalb auch wenig sagen.
    Letztlich entwickelt jeder Modder da sowieso seine eigenen Vorgehensweisen.
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  6. #21
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009
    Ich bekomme jetzt diese Fehlermeldung:



    Im Makefile habe ich aber den korrekten Pfad angegeben:

    CIVINSTALL=C:\Program Files (x86)\2K Games\Firaxis Games\Sid Meier's Civilization 4 Complete\Beyond the Sword

    Was will der hier?
    Angehängte Grafiken Angehängte Grafiken

  7. #22
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    Ich glaube, ich kenne das Problem, muss es aber erstmal in der EU nachschauen.


    edit:

    unter Menü -> Projekt -> ...DLL-Eigenschaften (ganz unten)

    Bild

    So öffnet sich das linke Fenster, gehe zu Reiter Debuggen und Stelle alle Konfiguration oben links ein. Bei Befehl wird auf die Exe verlinkt und bei Arbeitsverzeichnis habe ich den BTS-Ordner, in dem die Exe liegt, angegeben. Das Befehlsargument sollte sich selbst erklären.

    Mit Konfigurations-Manager öffnet sich das rechte Fenster. Bei Erstellen sollte ein Häckchen sein. So wird automatisch vor dem Starten die DLL erstellt. Sonst muss man das manuell vorher starten.
    Angehängte Grafiken Angehängte Grafiken
    Geändert von rucivfan (06. Juli 2013 um 15:05 Uhr)

  8. #23
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009
    Kann ich diese geänderte .dll auch dann für ein bereits laufendes Spiel verwenden, oder muss ich dazu zwangsläufig ein neues starten? Ich nehme an, letztes, was aber dann einige Zeit brauchen würde, bis ich in die bisherigen absturzgefährdeten Regionen komme. Aber vielleicht treten die Fehler auch schon früher auf uns häufen sich nur, sobald es ernst wird.

  9. #24
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    An der Stelle ist die DLL schon fertig kompiliert. D.h. das Problem ist nur dann relevant, wenn du den Debugger benutzen willst.
    Die Pfadangaben dazu sind irgendwo in den Projekteigenschaften versteckt.
    Aber es ist nicht sinnvoll die Release-Version mit dem Debugger zu starten (So sieht es auf den Screenshot aus) und ich erhalte auch eine Fehlermeldung, wenn ich bei der Release-Version mittels F5 kompiliere (weil das ja noch den Debugger startet).

    Edit: Das sieht man jetzt auch auf dem Screenshot von Rucivfan: Die Angaben beziehen sich auf die Debug-Variante.

  10. #25
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    Kathy brauch den Debugger.

  11. #26
    Col-Modder Avatar von raystuttgart
    Registriert seit
    19.03.10
    Ort
    Stuttgart
    Beiträge
    4.585
    Zitat Zitat von Kathy Beitrag anzeigen
    Kann ich diese geänderte .dll auch dann für ein bereits laufendes Spiel verwenden, oder muss ich dazu zwangsläufig ein neues starten? Ich nehme an, letztes, was aber dann einige Zeit brauchen würde, bis ich in die bisherigen absturzgefährdeten Regionen komme. Aber vielleicht treten die Fehler auch schon früher auf uns häufen sich nur, sobald es ernst wird.
    Du kannst die DLL mit der Debug-DLL wann immer du willst austauschen, solange sie den selben Source-Code als Basis haben.
    Die Savegames sind dann kompatibel.

    Also folgendes Vorgehen ist möglich und wird auch oft angewandt:

    1. Mit normaler DLL spielen, bis ein Crash auftritt.
    2. Normale DLL durch Debug-DLL austauschen.
    3. Mod starten und letztes Savegame laden.
    4. Entwicklungsumgebung dranhängen und versuchen zu analysieren.
    Teammitgleid dieses Projekt für Colonization:
    [Mod] We The People
    (Nachfolgerprojekt von Religion and Revolution)

    Davor Teammitgleid dieses Projekt für Colonization:
    [Mod] Religion and Revolution

    Vor-Vorheriges Projekt für Colonization:
    [ModMod] ray's Wunschliste

    Und wiederum davor Teammitglied von:
    [Mod] The Authentic Colonization (TAC)

  12. #27
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    bezieht sich auf Kathy:

    Meinst du während das Spiel läuft? Nein in dem Fall, das Spiel muss kurz geschlossen und wieder gestartet werden, wenn man Änderungen übernehmen will.

    Für die Savegamekombatiblität gilt: Kommt drauf an, was man in der DLL ändert. Wird nur verarbeitender Code geändert, sollte es weitestgehen Kombatibel sein. Bei Änderung der Savegamestruktur geht das nicht mehr ohne aufwendigen Code, der die alte Struktur an die neue anpasst.

    Der Wechsel von Release zu Debug-DLL verursacht keine Probleme.

  13. #28
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009
    Das beruhigt mich, denn so kann ich doch etwas einfacher in die Fehleranalyse einsteigen. Ich muss allerdings - fürchte ich - vorher dennoch einigen Aufwand treiben, denn ich habe nicht die Quelldateien für meine derzeitige Gamecore. Die hatte deepwater für mich aus einem Mod von den Civfanatics gemacht, aber leicht verändert. Wenn ich jetzt mir den Daten da rangehe, dich ich habe, dürfte das Spiel Probleme bekommen.

  14. #29
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    17.009
    Welche Bedeutung hat diese Fehlermeldung?
    Angehängte Grafiken Angehängte Grafiken

  15. #30
    Civ4 BASE Coder Avatar von rucivfan
    Registriert seit
    10.07.11
    Ort
    Antarktika
    Beiträge
    19.016
    Wie es dort steht. Dir ist der Code der Exe unbekannt. Das ist verständlicher Weise nachvollziehbar, oder?

    Häckchen + ja

Seite 2 von 32 ErsteErste 12345612 ... LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •