Seite 1 von 1

Purebasic von USB-Stick

Verfasst: 30.11.2005 21:18
von shim
Hallo!

Für alle, die Purebasic so wie ich vom USB-Stick starten:

Code: Alles auswählen

Global version$, ininame$, csv$, lf$, ExePath$,getapp$

Procedure SetIni(Abschnitt.s,Schluessel.s,Wert.s,Datei.s) 
  WritePrivateProfileString_ (Abschnitt,Schluessel,Wert,Datei) 
EndProcedure 

Procedure.s getini(Abschnitt.s,Schluessel.s,Datei.s) 
     Value.s = Space(255) 
     Result.l = GetPrivateProfileString_ (Abschnitt, Schluessel, "", Value, Len(Value), Datei) 
     Value = Left(Value, Result) 
     ProcedureReturn Value 
EndProcedure 

Procedure Delinikey(Abschnitt.s,Schluessel.s,Datei.s) 
     WritePrivateProfileString_ (Abschnitt, Schluessel, 0,Datei) 
EndProcedure 

Procedure Pref_DelAbschnitt(Abschnitt.s,Datei.s) 
     WritePrivateProfileString_ (Abschnitt, 0, "",Datei) 
EndProcedure 


getapp$=Space(1000) : GetModuleFileName_(0,@getapp$,255)
ininame$=LCase(getapp$)
ininame$ = ReplaceString(ininame$, ".exe", ".ini" ,0 ,1)
logfile$ = ReplaceString(ininame$, ".ini", "_log.txt" ,0 ,1)
ExePath$ = GetPathPart(getapp$)

lw$      =Left(ExePath$,2)+"\purebasic\"
exad$    =Left(ExePath$,2)+"\basicprogs\"
ppe$    =lw$+"PureBasic.exe"
ininame$=lw$+"PureBasic.prefs"
lfcr$=Chr(13)+Chr(10)

;Recent files

rr =Val(getini("RecentFiles","HistorySize",ininame$))

For r=1 To rr

Value$ =getini("RecentFiles","RecentFile_"+Str(r),ininame$)

 Value$=Right(Value$,Len(Value$)-2)
 Value$=Left(ExePath$,2)+Value$
Result=SetIni("RecentFiles","RecentFile_"+Str(r),Value$,ininame$)

Next r

rr =Val(getini("OpenedFiles","Count",ininame$))

For r=1 To rr

Value$ =getini("OpenedFiles","OpenedFile_"+Str(r),ininame$)
Value$=Right(Value$,Len(Value$)-2)
 Value$=Left(ExePath$,2)+Value$
Result=SetIni("OpenedFiles","OpenedFile_"+Str(r),Value$,ininame$)

Next r
RunProgram(ppe$,ProgramParameter(),"")
End
Da ich auch meine Quellcodes auf dem Stick habe, erleichtert mir dieses kleine Programm den Start enorm. Egal welcher Laufwerksbuchstabe der Stick hat, alle Dateien werden korrekt in den Editor geladen.

Lars

Verfasst: 30.11.2005 22:17
von NicTheQuick
Kannst du noch etwas genauer erklären, was der Code macht und wie
man ihn einsetzt? Ich möchte das nicht selbst herausfinden.

Danke!

Verfasst: 30.11.2005 23:55
von shim
Klar doch...

Der Code ändert die purebasic.pref Datei und setzt sämtliche Pfadangaben innerhalb dieser Datei auf die aktuelle Laufwerkskennung.

Die resultierende EXE muß sich dabei auf dem Stick befinden, der Purebasic Ordner sollte "Purebasic" heißen und.... das ist natürlich nur bei mir so: meine Dateien befinden sich in "basicprogs", ebenfalls auf dem Stick.

So kann auf jedem System, unabhängig vom vergebenen Laufwerksbuchstaben für den Stick nahtlos weitergearbeitet werden. Es werden sämtliche geladene Dateien wieder korrekt hergestellt.

Achtung: PureBasic.prefs wird modifiziert!

Lars

Verfasst: 02.12.2005 00:09
von super_castle
"Kannst du noch etwas genauer erklären, was der Code macht und wie
man ihn einsetzt? Ich möchte das nicht selbst herausfinden. "

eigentlich macht gerade das experimentieren spass. ansonsten brauchst du erst gar nicht proggen. versuche müssen gemacht werden. purebasic fordert einen mit dem sehr grossen befehlsumfang geradezu heraus. also nur mut und keine angst.

mfg castle

Verfasst: 02.12.2005 00:18
von Kaeru Gaman
@supercastle

äh.. wus?

glaub ja nich was ich da les... :lol:


sorry, aber das programm verändert die purebasic.pref

wahrscheinlich wollte NTQ (der hier schließlich moderator ist)
durch die blume sagen, dass shim vergessen hat, darauf hinzuweisen.


mit proggies, die irgendwelche einstellungen verändern rumzuprobieren,
kann echt zusätzliche arbeit erzeugen.
viele mögen sowas garnicht.
also nicht: "nur mut, fleißig ausprobieren"
sondern: wenn eure proggies grundeinstellungen verändern, weist darauf hin,
oder vermeidet sowas, das mag nämlich niemand.

Verfasst: 02.12.2005 09:53
von stbi
Soweit ich das beurteilen kann, genügt es, in der purebasic.prefs alle Pfadangaben zu relativieren, z.B. aus D:\Programme\Purebasic\... macht man \Programme\Purebasic...

<)

Verfasst: 03.12.2005 14:38
von shim
Hui!

Mit den relativen Pfaden mag das ja stimmen, aber manchmal lade ich dann doch eine neue Datei...

und ob nun der Pfad mit dem aktuellen Laufwerksbuchstaben oder mit keinem Laufwerksbuchstaben versehen wird, ist Geschmacksache. Was da besser ist, wer kann es wissen. Ich bin jedenfalls ganz froh, Purebasic von der obersten Ebene mit einem Doppelklick starten zu können.

Bis dahin

P.S.: Ein Progrämmchen sollte schon erklärt werden und ich denke, ein programm "einfach zu starten" war bestimmt nur ironisch gemeint.
Ich habe einfach gedacht, das sich das Programm fast selbst erklärt...(wie im übrigen viele Purebasic-Programme...deswegen finden wir Purebasic ja so toll, oder??)

Wenn noch jemand Bedarf hat, mehr über das Programm zu erfahren, möge sich bitte melden. Es macht wirklich nichts verheerendes und nutzt nichts außergewöhnliches. Zur Sicherheit kann man die purebasic.pref Datei sichern.