dateifpad von datei aus ermitteln

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Um den Pfad in die Registry einzutragen, ist z.B. dieser Pfad üblich:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Little John

Beitrag von Little John »

cofter hat geschrieben:Das Programm soll nach möglichkeit später auch nach Linux portiert werden.
cofter hat geschrieben:werde InnoSetup zum installieren verwenden dort könnte man die uninstall.dat evtl auslesen und den Pfad von dort übernehmen.
Gibt's jetzt Inno Setup auch für Linux? Hab' ich gar nicht mitbekommen.

Gruß, Little John
cofter
Beiträge: 84
Registriert: 10.03.2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von cofter »

Nein, gibts noch nicht.
Aber da wir eh erst in der Beta sind brauch ich jetzt noch keinen Linux installer.

@ts-soft

Ich will ja nix in die Registry eintragen die muss nich zugemüllt werden. ;)
Was ich nicht kenne das mach ich kaputt! :D
----------------------------------------------------
Purebasic v4.0
Little John

Beitrag von Little John »

Dann lass halt Inno Setup die Information, wohin die ominöse Datei kopiert wurde, in eine einfache Textdatei schreiben. Diese Textdatei mit der Pfad-Information kann sich z.B. im selben Verzeichnis wie Dein Hauptprogramm befinden, so dass das Hauptprogramm weiß, wo es die Information finden kann.

Gruß, Little John
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

cofter hat geschrieben:@ts-soft

Ich will ja nix in die Registry eintragen die muss nich zugemüllt werden. ;)
Entweder Installer oder zumüllen, Installer ohne zumüllen geht nicht. Oder Installer ohne Uninstaller, aber dann haste wieder keine Möglichkeit die
Anwendung zu finden.

Die andere Anwendung kann es aber auch einfach unter Anwendungsdaten speichern:

Code: Alles auswählen

EnableExplicit

Procedure.s GetSpecialeFolder(folder.l)
  Protected *itemid.ITEMIDLIST = #Null
  Protected location.s = Space (#MAX_PATH)
  If SHGetSpecialFolderLocation_ (0, folder, @*itemid) = #NOERROR
    If SHGetPathFromIDList_ (*itemid, @location)
      If Right(location, 1) <> "" : location + "" : EndIf
      ProcedureReturn location
    EndIf
  EndIf
EndProcedure

Define.s ConfigPath = GetSpecialeFolder(#CSIDL_APPDATA) + "MyProgramFolder"
MakeSureDirectoryPathExists_(ConfigPath)
If OpenPreferences(ConfigPath + "MyConfig.prefs") = #False
  If CreatePreferences(ConfigPath + "MyConfig.prefs") = #False
    Debug "Kann Preference nicht erstellen"
    End
  EndIf
EndIf
PreferenceGroup("Settings")
WritePreferenceString("AppDir", GetPathPart(ProgramFilename()))
ClosePreferences()
Muß einfach von der Anwendung bei jedem Start ausgeführt werden, dann
werden auch Verschiebungen berücksichtigt.

Das andere Programm kann jetzt den Pfad dort abfragen
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
cofter
Beiträge: 84
Registriert: 10.03.2006 19:07
Wohnort: Berlin
Kontaktdaten:

Beitrag von cofter »

Danke für den Code... leider bin ich damit überfordert. :(
PB is zu lang her... *stöhn*

Kann kein PB crack mir ein wenig zur Hand gehen? :)
Nähere Infos würde ich per PN, icq, mail oder MSN geben.
Was ich nicht kenne das mach ich kaputt! :D
----------------------------------------------------
Purebasic v4.0
Antworten