Ergebnis 1 bis 1 von 1

Thema: Tutorial: Fehler abfangen & aussagekräftige Fehlermeldungen im Power Patch v0.3/0.4x

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Tutorial: Fehler abfangen & aussagekräftige Fehlermeldungen im Power Patch v0.3/0.4x

    Wer den Power Patch verwendet, wird Meldungen wie diese kennen "Lua error 2 in script '..........\mainloop.lua'". Sehr aussagekräftig sind die nicht.

    Es gibt aber einen Weg, "sinnvolle" Fehlermeldungen zu erhalten.

    1) Kopiert folgende zwei Skripte in euren "Script"-Ordner:
    safe_init.lua
    Code:
    local status, err = pcall(function ()
     local f, err = loadfile(GamePath .. "\\Script\\init.lua")
     if f == nil then error(err) end
     f()
    end)
    
    if status == false then
     MsgBox("An error occured:\n" .. err)
     ExitGame()
    end
    safe_mainloop.lua
    Code:
    local status, err = pcall(function ()
     local f, err = loadfile(GamePath .. "\\Script\\mainloop.lua")
     if f == nil then error(err) end
     f()
    end)
    
    if status == false then
     MsgBox("An error occured:\n" .. err)
     ExitGame()
    end
    2) Öffnet den Configurator und ändert die Skriptnameneinstellungen von "init.lua" und "mainloop.lua" zu "safe_init.lua" und "safe_mainloop.lua"

    Danach sehen die Fehler etwa so aus:

    Zitat Zitat
    An error occured:
    ...\_Fertige Projekte\Power Patch v0.44\Script\init.lua:15: attempt to call global 'blubb' (a nil value)
    ...was sicher mehr bei der Fehlersuche hilft!

    Ähnliche Konstrukte kann man natürlich auch verwenden, um Fehler zur Laufzeit abzufangen und zu behandeln. Dazu sei auf diesen Artikel verwiesen.

    Damit Fehler auch bei anderen Skripten angezeigt werden, solltet ihr statt "RunScript" dann "dofile" verwenden!

    mfG Cherry

    Geändert von Cherry (27.02.2011 um 14:57 Uhr)

Berechtigungen

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