Forum: PC-Programmierung Wo ini-file von eigenem Programm ablegen?


von Christopher (Gast)


Lesenswert?

hi und guten Morgen!
ich habe ein eigenes Programm geschrieben und benötige dafür ein 
ini-file.
Ich frage mich nun wo man am besten dieses ini-file ablegt?

zu XP-Zeiten war das ja noch relativ einfach (wenn auch unschön), da 
hatte jedes Programm einen eigenen Ordner unter c:\Programme wo alles 
drin war.

Bei Win7 habe ich nun das Problem dass der Programme(x86) Ordner für 
normale user schreibgeschützt ist. Wohin also mit der ini-Datei?

Manche Programme, darunter z.B. mein F-Secure Virenscanner, legen die 
inis trotzdem in das Programmverzeichnis ab, es schein also doch zu 
funktionieren.
Andere Programme nützen das Windows\inf\ Verzeichnis, da gehört sowas 
m.M.n. aber nicht hin.

Es gäbe unter Win7 das \Dokumente und Einstellungen\<user>\Application 
Data Verzeichnis, aber eben nicht unter XP, d.h. ich benötige zwei 
Installer-Routinen..

Was würdet Ihr tun? gibt es da irgendwie eine "übliche" Lösung?

von Peter II (Gast)


Lesenswert?

sind die Einstellungen für alle Nutzer oder für den aktuellen?

Wenn es für den Aktuellen ist dann kannst du die
Umgebungsvariable %AppData% verwenden

von MaWin (Gast)


Lesenswert?

Christopher schrieb:
> Was würdet Ihr tun?

Windows es tun lassen: Einfach PROGRAM.INI übergeben, dann landet es 
unter XP in c:\windows und unter Win7 in AppData und du bist in beiden 
Fällen in der Lage es in die Registry umzuleiten.

von Alex (Gast)


Lesenswert?

Peter II schrieb:
> Wenn es für den Aktuellen ist dann kannst du die
> Umgebungsvariable %AppData% verwenden

Ganz genau!

Christopher schrieb:
> Es gäbe unter Win7 das \Dokumente und Einstellungen\<user>\Application
> Data Verzeichnis, aber eben nicht unter XP, d.h. ich benötige zwei
> Installer-Routinen..

Du kannst seit Vista das KnownFolders Interface nutzen, 
http://msdn.microsoft.com/en-us/library/bb776911(VS.85).aspx

Und falls es tatsächlich noch Windows XP werden soll hilft 
SHGetSpecialFolderPath, 
http://msdn.microsoft.com/en-us/library/bb762204(v=vs.85).aspx

Beide APIs liefern dir unabhängig von der Betriessystemversion den Pfad 
zum Verzeichnis für Anwendungsdaten.

von bluppdidupp (Gast)


Lesenswert?


von Christopher (Gast)


Lesenswert?

Hallo!
Danke für Eure Tipps. bin nun Euren Ratschlag gefolgt und verwende 
%AppData%.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.