Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Compilerpfadsetzen für mobiles FreeBASIC

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
rammelteid



Anmeldungsdatum: 26.08.2005
Beiträge: 1

BeitragVerfasst am: 26.08.2005, 11:04    Titel: Compilerpfadsetzen für mobiles FreeBASIC Antworten mit Zitat

Vielleicht interessiert es ja keinen, aber das soll mich nicht abhalten lächeln

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
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz