![]() |
.inis bei der exe speichern
Hallo,
mein Programm erstellt automatisch beim ersten Start (nur dann...) eine .ini, jedoch musste ich es bisher so machen, dass ich einen festen Pfad eingebe. Für mein Programm ist es aber unbedingt notwendig, dass es auf jedem Rechner läuft, dh ist ein fester Pfad nicht ideal. Wie kriege ich das hin? Welchen Pfad muss ich eingeben? Bisher mache ichs so:
Delphi-Quellcode:
ist halt nur doof...
ini := TIniFile.Create('C:\Users\henning\Desktop\Auftrag\Programm\Debug\Win32\Dontopen.ini');
if fileexists('C:\Users\henning\Desktop\Auftrag\Programm\Debug\Win32\Dontopen.ini') then begin |
AW: .inis bei der exe speichern
Such einmal im Forum nach
![]() |
AW: .inis bei der exe speichern
z.B. mit
Delphi-Quellcode:
damit hast Du den Pfad wo deine exe sich befindet.
mypath:= ExtractFilePath(Application.Exename);
Gruss alfold |
AW: .inis bei der exe speichern
Wunderbar :) Danke jungs!
Noch eine Frage, die sich aus der Problemstellung unter Umständen ergibt: Mein Win 7 sagt beim starten der exe außerhalb Delphi XEs, dass die Ini nicht geschrieben werden kann. Beispiel: "C:\Dontopen.ini kann nicht geschrieben werden." Wenn ich als Admin ausführe gehts. Kann man win 7 da irgendwie austricksen? :/ Wäre ja nervig, wenn man es immer als Aministrator ausführen muss! |
AW: .inis bei der exe speichern
Dein Prog sollte ja auch dahin wo der jeweilige user die Rechte hatt!
Und das ist nun mal nicht 'C:\' Gruss alfold |
AW: .inis bei der exe speichern
Deswegen ja mein Hinweis auf SHGetFolderPath. Es gibt ja von Windows vorgesehene Verzeichnisse für Einstellungsdateien.
|
AW: .inis bei der exe speichern
Zitat:
|
AW: .inis bei der exe speichern
Es hat sich augenscheinlich immer noch nicht herum gesprochen, daß hinter den vielen Verzeichnissen in einem frisch installierten Windows ein Konzept steckt.
Ob das soo sinnvoll ist, kann man ja diskutieren, aber das Prinzip ist nicht so ganz dumm! Gruß K-H |
AW: .inis bei der exe speichern
Eigentlich existiert das mit den Zugriffsrechten im Dateisystem schon lange, aber da Viele bis XP noch mit vollen Adminrechten unterwegs waren, hat das nur keiner gemerkt und niemand machte sich Gedanken darum dieses mal richtig zu beachten. (tja, seit Vista heulen nun alle rum, weil nix mehr geht, obwohl es schon sooooo lange "bekannt" war)
|
AW: .inis bei der exe speichern
Wenn das Programm beim ersten Start (der mit Admin-Rechten ausgeführt wird) die ini-Datei anlegen soll, dann bietet sich folgendes an um einen Dateinamen für die ini-Datei zu bekommen, der direkt im Anwendungsverzeichnis liegt.
Der Dateiname ist bis auf die Endung gleich dem Anwendungsnamen.
Delphi-Quellcode:
Ansonsten nimmst die die Unit die du
ChangeFileExt( ParamStr( 0 ), '.ini' )
![]() Da hast du einen sehr einfachen Zugriff auf die SpecialFolders unter Windows |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz