Hi,
ich generiere, wenn beim start des Programs die game.ini datei nicht vorhanden ist, eine game.ini.
In der stehen die daten für setscreen und limitfps.
Ich möchte das ganze aber so machen das auch ein Ordner "system" angelgt wird in dem die .ini steht wenn der
Ordner nicht vorhanden ist.
Hier wäre ein "CreateDir$" nicht schlecht.
Hier mal mein Code mit Beispiel:
//------------------------------------------------
GLOBAL win AS Tgraphics
win = graphics()
//Beispiel:
WHILE TRUE
PRINT "hallo",10,10
PRINT win.x,10,20
PRINT win.y,10,30
PRINT win.mode,10,40
PRINT win.fps,10,50
SHOWSCREEN
WEND
//
FUNCTION graphics AS Tgraphics:
LOCAL file
LOCAL l_win$
l_win$ = "window"
LOCAL temp AS Tgraphics
file = DOESFILEEXIST("game.ini")
temp.file = file
IF file = FALSE
INIOPEN "game.ini"
INIPUT l_win$,"winx",800
INIPUT l_win$,"winy",600
INIPUT l_win$,"winmode",0
INIPUT l_win$,"frame",100
INIOPEN ""
INIOPEN "game.ini"
temp.x = INTEGER( INIGET$(l_win$,"winx") )
temp.y = INTEGER( INIGET$(l_win$,"winy") )
temp.mode = INTEGER( INIGET$(l_win$,"winmode") )
temp.fps = INTEGER( INIGET$(l_win$,"frame") )
INIOPEN ""
SETSCREEN temp.x,temp.y,temp.mode
LIMITFPS temp.fps
ELSE
INIOPEN "game.ini"
temp.x = INTEGER( INIGET$(l_win$,"winx") )
temp.y = INTEGER( INIGET$(l_win$,"winy") )
temp.mode = INTEGER( INIGET$(l_win$,"winmode") )
temp.fps = INTEGER( INIGET$(l_win$,"frame") )
INIOPEN ""
SETSCREEN temp.x,temp.y,temp.mode
LIMITFPS temp.fps
ENDIF
RETURN temp
ENDFUNCTION
TYPE Tgraphics
x
y
mode
fps
file
ENDTYPE
Leg' den Ordner doch vorher schon an. Im Notfall kann man mit:
SHELLCMD("cmd.exe /C mkdir ornder", ...)
was machen.
Jepp, Du hast Da schon recht, war nur so ein gedanke.
Sowas hatte ich schon öfters benutzt.
Mir gings eigendlich darum, wenn z.b bei einstellungen etwas schief läuft und das Programm nicht mehr startet einfach den Ordner löschen und wieder mit Standart dateien erstellen.
Das ist aber nicht so tragisch, wie gesagt, es war nur so ein Gedanke.
mit KILLFILE bekommst Du die Datei weg.
Ich habe das jetzt mal so mit SHELLCMD probiert,
ansich funktioniert es, nur der von mir gewollt erstellte Ordner sollte "system" heisen, erstellt wird hier aber ein ordner mit "0system".
Woher, bzw. wie bekomme ich die 0 weg.
Ist nur ne Frage nebenbei.
Von dem Ordner erstellen werde ich wieder abweichen, da es warscheinlich dann mit Linuxsystemen Problemme geben wird, wegen den Schreibrechten.
mydir$ = GETCURRENTDIR$()
PRINT mydir$,10,10
SHELLCMD("cmd.exe /c mkdir "+mydir+"system",TRUE, FALSE, rv)
Die Variable "mkdir" hat den Wert 0.