HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
dateifpad von datei aus ermitteln
- 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
Um den Pfad in die Registry einzutragen, ist z.B. dieser Pfad üblich:
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

cofter hat geschrieben:Das Programm soll nach möglichkeit später auch nach Linux portiert werden.
Gibt's jetzt Inno Setup auch für Linux? Hab' ich gar nicht mitbekommen.cofter hat geschrieben:werde InnoSetup zum installieren verwenden dort könnte man die uninstall.dat evtl auslesen und den Pfad von dort übernehmen.
Gruß, 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
Gruß, Little John
- 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
Entweder Installer oder zumüllen, Installer ohne zumüllen geht nicht. Oder Installer ohne Uninstaller, aber dann haste wieder keine Möglichkeit diecofter hat geschrieben:@ts-soft
Ich will ja nix in die Registry eintragen die muss nich zugemüllt werden.
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()
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.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
