filemanager Command geht net. Hab ne fehlermeldung eingebaut damit ich weiß wo es net geht

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
  • Beitrag von Tom Sunder ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • ich hab es nun so weiß aber das es net stimmen kann aber sonst kommen error.
    Ich will machen dass alle datein nacheinander geöffnet werden und dann durchgeschaut werden, ob da ds gesuchte Wort vorkommt. Da ich wenn ich dir_list mach das aufgelistete auch öffnen muss, hab ich mal versucht die zwei Sachen die da vorkommen (hab alles ausprobiert) bei file_read reinzupacken. Aber da bekomme ich immer Errors.
    dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new Suchbegriff[MAX_PLAYER_NAME], dir:Benutzer= dir_open("Accounts/"), type[128], item[40], string[64];
    if(sscanf(params,"s", Suchbegriff)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    while(dir_list(Benutzer, item))
    {
    new File:file = fopen(type, io_read);
    if(file)
    {
    file_read(type, item, sizeof(item));
    if(strfind(item, Suchbegriff, true) != -1)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Es wurde etweas gefunden!");
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, Suchbegriff);
    SendClientMessage(playerid, COLOR_GREEN, string);
    }
    return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    }
    }
    return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    }
    Was muss ich jetzt amchen, damit die Datein die ich bei dir_list auflisten lassen hab nacheinander geöffnet werden und dann durchgeschaut werden ob das gesuchte Wort oder Zahl drinnen ist (das mit ob es drinnen ist hab ich ich brauch nurnoch dass mit dem auflisten von dem Zeug das ich geöffnet hab)
    PS: Das von mirr kann net Stimmen da ja das aufgelistete net bei dir_read verwendet wird!
    (Der code schaut zimlich anders aus wie davor da es mein bruder (der es auch net wusste obwohl er schon lang scriptet) auch ausprobiert hat

  • Beitrag von Tom Sunder ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Ich hab es nun. Aber wenn ich /benutzerdurchsuchen 1 eingeb (bei meinem Accountdatei ist ne 1 drinnen) kommt nichts.

    dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new Suchbegriff[MAX_PLAYER_NAME], dir:Benutzer = dir_open("Accounts/"), type, item[40], string[64];
    if(sscanf(params,"s", Suchbegriff)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    while(dir_list(Benutzer, item, type))
    {
    if(type == FM_FILE)
    {
    new file[1024];
    file_read(file, item);
    if(strfind(file, Suchbegriff, true) != -1)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Es wurde etweas gefunden!");
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, Suchbegriff);
    SendClientMessage(playerid, COLOR_GREEN, string);
    }
    else { SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!"); }
    }
    }
    }

    Hat wer ne Idee woran es liegt?

  • Findest du denn was, wenn du einen Buchstaben eingibst?

  • Beitrag von Tom Sunder ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Beitrag von Tom Sunder ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • ich hab es nun so:
    dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new Suchbegriff[MAX_PLAYER_NAME], dir:Benutzer= dir_open("scriptfiles/Webseiten/"), type, item[40], string[64];
    if(sscanf(params,"s", Suchbegriff)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    while(dir_list(Benutzer, item, type))
    {
    if(type == FM_FILE)
    {
    new file[1024];
    file_read(file, item);
    if(strfind(file, Suchbegriff, true) != -1)
    {
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, Suchbegriff);
    SendClientMessage(playerid, COLOR_GREEN, string);
    }
    }
    else { SendClientMessage(playerid, COLOR_RED, "Es ist ein Fehler aufgetreten (Error F4826)"); }
    }
    return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    }
    und wenn cih nun /benutzerdurchsuchen hallo eingeb kommt die fehlermeldung "Es ist ein Fehler aufgetreten (Error F4826)" (die hab ich selber erstellt damit ich weiß, wenn der command net funkt woran es liegt
    was ist falsch

  • Änder doch mal den Type ;)
    Kann mir schwer vorstellen das das der Fehler ist, aber ein Versuch ist es Wert.

  • Auf Anfrage in PN:


    dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new dir:Benutzer = dir_open("./scriptfiles/Webseiten/"), type, item[40], string[64], file[1024], bool:found = false;
    if(!strlen(params)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    while(dir_list(Benutzer, item, type))
    {
    if(type == FM_FILE)
    {
    file_read(item, file);
    if(strfind(file, params, true) != -1)
    {
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, params);
    SendClientMessage(playerid, COLOR_GREEN, string);
    found = true;
    }
    }
    else { SendClientMessage(playerid, COLOR_RED, "Es ist ein Fehler aufgetreten (Error F4826)"); }
    }
    if(!found) return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    else return 1;
    }


  • geht trozdem nicht :(

  • Debug:
    dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new dir:Benutzer = dir_open("./scriptfiles/Webseiten/"), type, item[40], string[64], file[1024], bool:found = false;
    if(!strlen(params)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    printf("params: %s", params);
    while(dir_list(Benutzer, item, type))
    {
    printf("item: %s / type: %d (%d)", item, type, FM_FILE);
    if(type == FM_FILE)
    {
    printf("File Open");
    file_read(item, file);
    printf("item: %s / file: %s", item, file);
    if(strfind(file, params, true) != -1)
    {
    printf("Found");
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, params);
    SendClientMessage(playerid, COLOR_GREEN, string);
    found = true;
    }
    }
    else { SendClientMessage(playerid, COLOR_RED, "Es ist ein Fehler aufgetreten (Error F4826)"); printf("Error F4826"); }
    }
    print("Ende");
    if(!found) return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    else return 1;
    }


    Was steht im Server Log?

  • Beitrag von Tom Sunder ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.

  • in der konsole kommt:

    Code
    [20:32:19] params: hallo
    [20:32:19] item: . / type: 1 (2)
    [20:32:19] Error F4826
    [20:32:19] item: .. / type: 1 (2)
    [20:32:19] Error F4826
    [20:32:19] item: Nike.ini / type: 2 (2)
    [20:32:19] File Open
    [20:32:19] item: Tom_Sunder.ini / file: 
    [20:32:19] item: Timer.ini / type: 2 (2)
    [20:32:19] Ende
  • dcmd_benutzerdurchsuchen(playerid,params[])
    {
    new dir:Benutzer = dir_open("./scriptfiles/Webseiten/"), type, item[40], string[64], file[1024], bool:found = false;
    if(!strlen(params)) { return SendClientMessage(playerid,COLOR_RED,"Benutze: /benutzerdurchsuchen [Suchbegriff (bitte nur ein Wort!)]"); }
    printf("params: %s", params);
    while(dir_list(Benutzer, item, type))
    {
    printf("item: %s / type: %d (%d)", item, type, FM_FILE);
    if(type == FM_FILE)
    {
    format(file, sizeof(file), "/scriptfiles/Webseiten/%s", item);
    printf("File Open: %s", file);
    new File:rFile = fopen(file, io_read);
    fread(rFile, file);
    printf("item: %s / file(inhalt): %s", item, file);
    if(strfind(file, params, true) != -1)
    {
    printf("Found");
    format(string, sizeof(string), "%s enthält das Wort oder die Zahl %s", item, params);
    SendClientMessage(playerid, COLOR_GREEN, string);
    found = true;
    }
    fclose(rFile);
    }
    //else { SendClientMessage(playerid, COLOR_RED, "Es ist ein Fehler aufgetreten (Error F4826)"); printf("Error F4826"); }
    }
    print("Ende");
    if(!found) return SendClientMessage(playerid, COLOR_RED, "Es wurde leider nichts gefunden!");
    else return 1;
    }


    Ich hab den "Error" mal auskommentiert, da der hier irrelevant ist.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen