rammelteid
Anmeldungsdatum: 26.08.2005 Beiträge: 1
|
Verfasst am: 26.08.2005, 12:04 Titel: Compilerpfadsetzen für mobiles FreeBASIC |
|
|
Vielleicht interessiert es ja keinen, aber das soll mich nicht abhalten
In den letzten Tagen habe ich mir ein "Cross-Platform-Development-Kit" gebastelt, d.h. alle Betriebssystemversionen zusammengenommen und auf USB-Stick gespielt. Nun fand ich es recht störend, daß FBIDE sich auf den verschiedenen (Windows-)Rechnern aufgrund verschiedener Laufwerke jedesmal beschwerte, der Compilerpfad sei nicht gesetzt.
Deswegen verzapfte ich folgendes kleines Programm:
'###################
'# setcompilerpath.bas
'###################
OPTION EXPLICIT
OPTION BASE 1
DIM currentdir AS STRING
DIM prefs AS STRING
DIM prefsini(256) AS STRING
DIM drive AS STRING
DIM doublepoint AS INTEGER
DIM path AS STRING
DIM backslash(256) AS INTEGER
DIM compiler AS STRING
DIM datname AS STRING
DIM position,index,row AS INTEGER
currentdir=CURDIR$
PRINT "Retrieving path: ";TAB(10);currentdir;" ..."
compiler="fbcwin32.exe"
PRINT "Setting Compilername to: ";TAB(10);compiler;" ..."
doublepoint=INSTR$(currentdir,":")
drive=Left$(currentdir,doublepoint)
currentdir=right$(currentdir,LEN(currentdir)-doublepoint)
position=0
index=1
DO
position=INSTR$(position+1,currentdir,"\")
IF position<>0 THEN
backslash(index)=position
index=index+1
END IF
LOOP UNTIL position=0
prefs=""
FOR position=1 TO index-1
prefs=prefs+"\"+mid$(currentdir,backslash(position),backslash(position+1)-backslash(position))
NEXT
prefs="fbc="+drive+prefs+"\\"+compiler
PRINT "prefs.ini entry will be: ";TAB(10);prefs;" ..."
datname=CURDIR$+"\IDE\prefs.ini"
PRINT "Opening prefs.ini: ";TAB(10);datname;" ..."
OPEN datname FOR INPUT AS #1
row=1
DO
LINE INPUT #1,prefsini(row)
row=row+1
LOOP UNTIL EOF(1)
CLOSE
OPEN datname FOR OUTPUT AS #1
FOR index=1 TO row
IF left$(prefsini(index),3)="fbc" THEN
PRINT "Replacing current entry: ";TAB(10);prefsini(index)
prefsini(index)=prefs
PRINT "with";TAB(10);prefsini(index)
PRINT "Saving ..."
END IF
PRINT #1,prefsini(index)
NEXT
PRINT "Done..."
END
Das ganze noch in eine *.bat verpackt:
setcompilerpath.exe
.\fbide.exe
Das ".\" hat seinen Sinn, ansonsten findet FBIDE sein Logo nicht.
MfG |
|