Path herausfinden

Anfängerfragen zum Programmieren mit PureBasic.
MoonWolf
Beiträge: 17
Registriert: 31.07.2009 15:03

Path herausfinden

Beitrag von MoonWolf »

Hallo
Mein Problem ist folgendes:
Ich mache einen Mini-Browser und habe als Startseite eine html-Datei, die ich selber erstellt habe. Wie kann ich den pfad der Html datei angeben, ohne den ganzen Pfad auf dem PC zu schreiben?

so siehts aktuell aus:

Code: Alles auswählen

WebGadget(10, 0, 31, 0, 0, "file:///C:/Dokumente/User/PureBasic/Browser/Other/Datei.html")
Wenn die .pb datei in dem Ordner Browser liegt, dann möchte ich eben nur so was angeben wie:
"Other/Datei.html"

Das ist notwendig, damit Andere Nutzer mit einer Anderen Ordnernavigation es auch nutzen können.

Ist das möglich?
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

Da du wahrscheinlich eine fertige EXE machen wirst und die wohl in diesem
Ordner abspeichern wirst brauchst du den Pfad, in dem das Programm läuft.
Dazu gibt's ProgramFilename(), da du aber den reinen Pfad haben willst tuste
einfach noch ein GetPathPart() davor. Das Ergebnis ist dann der Pfad und den
kannste dann beliebig weiterführen, meinetwegen mit "Other\Datei.htm"
also:

Code: Alles auswählen

Protected sPath
sPath = GetPathPart(ProgramFilename())
Win11 x64 | PB 6.20
Benutzeravatar
Vermilion
Beiträge: 1846
Registriert: 08.04.2006 16:00
Computerausstattung: Apple iMac (2010) & HP Notebook
Wohnort: Heidekreis

Beitrag von Vermilion »

Wenn der Ordner "Browser" immer im Benutzerverzeichnis liegt, musst du den nur Pfad des Benutzerordners ermitteln (es geht, ist nur eine Funktion wenn ich mich nicht irre, habe es gerade bloß nicht im Kopf).

Ansonsten musst du immer an die Adresseingabe den Pfad vor "Other/Browser.html" als Präfix anhängen.

Ansonsten... So wie man es bei Servern im Internet macht, dass du eintippst z.B. "http://localhost/Other/Browser.html" und er dann "file:///C:/Dokumente/User/PureBasic/Browser/Other/Datei.html" öffnet, dafür brauchst du einen eigenen HTTP Server wie Apache.
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

Sekündchen... :wink:
Win11 x64 | PB 6.20
Benutzeravatar
jojo1541
Beiträge: 431
Registriert: 15.09.2007 17:12
Wohnort: Irgendwo im Nirgendwo

Beitrag von jojo1541 »

Der Befehl heißt

Code: Alles auswählen

GetEnvironmentVariable_(name, value, size)
und die zu verwendende UV heißt "HOMEPATH".
Ich verkaufe Rechtschreibfehler und jede menge GROßBUCHSTABEN. Alles unbegrenzt zu haben.
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@volti
¿WinAPI?

¡Lieber GetEnvironmentVariable()!
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
jojo1541
Beiträge: 431
Registriert: 15.09.2007 17:12
Wohnort: Irgendwo im Nirgendwo

Beitrag von jojo1541 »

Geht auch, ich hab mir aber aus irgendwelchen Gründen angewöhnt, die Api-Funktion zu verwenden. <)
Ich verkaufe Rechtschreibfehler und jede menge GROßBUCHSTABEN. Alles unbegrenzt zu haben.
Antworten