Pfäde
Manche Funktionen erwarten ganze Pfäde von dem Programm. Wenn das Programm aber nun auf einem anderen Rechner installiert ist, und der Benutzer dort einen anderen Pfad als du für die Installation vorgesehen hast, benutzt hat, funktioniert das Programm nicht richtig. Dein Programm könnte so aussehen:
Print "Hier können sie meinen Lieblingssound hören!"
PlaySound "C:\Meinprog\Meindata\Meinsound\favorite\sound.wav",1
Der Befehl PlaySound wird später erklärt(Windows-Modus). Hier wird auf die
Datei C:\Meinprog\Meindata\Meinsound\favorite\sound.wav zugegriffen. Der
andere Benutzer hat als Verzeichniss aber C:\Programme\Tollesprog\ gewählt und bekommt eine Fehlermeldung. Es gibt die Funktion GetDir$($) um ein Verzeichniss zu ermitteln. Mit GetDir$("@") wird das jetztige Verzeichniss ermittelt. Beispiel:
Declare pfad$,pfad2$
pfad$=GetDir$("@")
pfad2$=Add$(pfad$,"\Meindata\Meinsound\favorite\sound.wav")
PlaySound pfad2$,1 Hier wird das selbe getan, nur bei dem anderen Benutzer funktioniert es jetzt.
Die Funktion Add$($,$) wurde schon erklärt.
Es kann mit der oben genannten Methode allerdings ein Fehler entstehen: Sobald ein anderes Arbeitsverzeichniss angegeben ist, funktioniert es nicht mehr.
Deshalb sollte man eine zweite möglichkeit nutzen:
Par$(%) Dieser Befehl gibt die Parameter an, die beim Aufruf angegeben werden. Beispiel:
Du startest das Programm meinprog1.exe aus der MS-DOS Eingabeaufforderung
so:
C:\meinord > meinprog1.exe 1para 2para 3para -4 .5 Nun kann das Programm seine eigenen Parameter auslesen. Diese Funktionen
würden folgendes zurückgeben:
Par$(1) = 1para
Par$(2) = 2para
Par$(3) = 3para
Par$(4) = -4
Par$(5) = .5 Verständlich, oder?Nun steht in %ParCount die Anzahl der Parameter. In diesem Beispiel sind es 5. In Par$(0) steht der Name des Programmes. In dem oberen
Beispiel ist Par$(0) = meinprog1.exe Nun ein kurzes Beispiel, wie man das Verzeichniss mit Hilfe von Par$(0)
herausbekommen kann:
Declare laufwerk$,pfad$
pfad$=Par$(0)
laufwerk$=Left$(pfad$,2)
pfad$=Del$(pfad$,1,2)
WhileNot Equ$(Right$(pfad$,1),"\") ' Solange,wie das letzte Zeichen
' von pfad$ NICHT ein \ ist...
pfad$=Left$(pfad$,Len(pfad$)-1) ' ...ziehe das letzte Zeichen ab.
Wend ' Ende der Bedingung Es muss immer das letzte Zeichen abgezogen werden, da der Pfad ja sonst
z.B. C:\Programme\Profan70\Profan.exe heißen würde. Da das letzte Zeichen dieses Pfades kein \ ist,wird ein Zeichen abgezogen. Das Ergebniss ist:
C:\Programme\Profan70\Profan.ex Das wird solange wiederholt, bis das letzte Zeichen ein \ ist,also:
C:\Programme\Profan70\ In pfad$ steht jetzt das Verzeichniss. In diesem Beispiel wird ein Befehl verwendet, der noch nicht erklärt wurde. While. Hiebei handelt es sich um eine Schleife.
|