Inkludierte Funktionen werden nicht gefunden

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey,


    bin gerade etwas perplex.


    Folgende Situation: Ich lagere aus Gründen der Übersichtlichkeit schon seit Ewigkeiten Funktionen in Includes aus.
    Bisher gab es auch keinerlei Probleme, doch als ich gestern ein neues Gamemode begonnen habe, möchte PAWN die Funktionen eines bestimmten Includes nicht erkennen.
    Laut PAWNO existiert diese Funktion bei der Verwendung nicht.


    #include <ScriptSources/UsefulFunctions>
    #include <ScriptSources/User>


    UsefulFunctions funktioniert wunderbar, nur User nicht.
    Dateiname ist definitiv korrekt und es werden keine Errors ausgegeben, dass die Include nicht gefunden wurde.
    Merkwürdigerweise kommt bei der User.inc auch kein Error, wenn ich die Include mal entferne und sie eigentlich nicht gefunden werden kann, bei UsefulFunctions allerdings schon.
    Dann kommt der "Cannot read from file" error.
    Das heißt, ich vermute, dass es am #include liegt, aber ich kann mir da echt keinen Reim drauf machen.


    Ich habe bereits die UsefulFunctions.inc Datei kopiert und diese in User.inc umbenannt, um sie so zu verwenden. Ebenso habe ich bereits an den Kodierungen rumgespielt, keine Wirkung.


    Das ist der Inhalt der Include:
    stock PlayerName(playerid){
    new str[MAX_PLAYER_NAME];
    GetPlayerName(playerid, str, sizeof(str));
    }


    Hat jemand eine Idee?


    Danke im Voraus.


    Grüße

  • Also bei mir klappt es ohne Probleme, habe genau die gleichen Bezeichnungen genommen.
    Du kannst ja mal versuchen, dir das SA-MP Paket nochmal neu herunterzuladen, und es dort einzufügen.


    Dann öffne die pawno.exe und wähle deinen Code über "öffnen" aus, achte darauf, dass es der richtige Pfad ist, wenn du den Code vielleicht mehrmals hast. Ging mir mal so, da habe ich in einem Backup herumgewerkelt, und hab es nicht gemerkt, dann kam auch so ein unerklärlicher Fehler zustande.


    Die Funktion sollte übrigens so aussehen:
    stock PlayerName(playerid){
    new str[MAX_PLAYER_NAME];
    GetPlayerName(playerid, str, sizeof(str));
    return str;
    }

  • Ich stell einfach mal eine dumme Frage: Befindet sich die eingebundene (dies ist das deutsche Wort für Includes) auch in dem richtigen /include Ordner unter deinem PAWNO? Ich selber habe nämlich auch mehrere SA-MP Server Versionen auf meiner HDD mit je eigenem PAWNO. Wenn du z.B. PAWNO einmal für SA-MP 0.3.7 (pawno.exe) geöffnet hast, bewirkt (sofern die Option aktiviert ist, was standard ist) ein Doppelklick auf eine .pwn Datei beim nächsten Mal, daß eben dieses PAWNO geöffnet wird.


    Wenn du also (SA-MP) Versionen wechselst, wieso auch immer, muss immer die pawno.exe der gewünschten Version gestartet werden.


    PS:
    wobei, dann würde er die Include ja nicht finden. Probier es dennoch mal, erst die gewünschte pawno.exe (wo sich deine eingebundene Datei befindet) erst zu öffnen und lade dir dann darüber dein Script rein.

  • Hat sich mittlerweile erledigt. Ich weiß echt nicht, woran es gelegen hat. Ich habe mal zwischenzeitlich den PAWNO Ordner verschoben und aus diesem Ordner heraus klappte es wunderbar.
    Als ich ihn dann testweise wieder zurückgeschoben habe (in den alten Ordner), war das Problem wieder existent.
    Mittlerweile klappt es auch wieder im alten Ordner.
    Keine Ahnung, was da los war.


    Dennoch danke für eure Hilfe.