![]() |
Vista, TIniFile, Inis im Programmverzeichnis
Hallo #,
jaja, ich weiss, sowas macht man nicht ;). Ich packe in die Ini das DB-Verzeichnis meiner Datenbank (Firebird). Bei einigen Konfigurationen (sprich Kunden) gibt es mehrere DB's in unterschiedlichen Verzeichnissen (man könnte es auch Mandant nennen). Ne Art manuelle Vorauswahl geht nicht, manchmal wird das Programm auch automatisch gestartet (geplante Vorgänge) Ich habe dann immer das Programmeverzeichnis kopiert, und die Ini entsprechend geändert. Klappte bis zu XP auch ganz gut. Jetzt kommt aber Vista :wall: . Mein schöner Algorithmus klappt nicht mehr. *seufz* Ich will das ganze in dem Zuge eh gleich maländern, z.B. die Ini in .Conf umbenennen und per "normalen" Textfile-Aufruf zu parsen. So viel steht da nicht drin. Die Frage ist, reicht hier ev. das einfache umbenennen in .conf und trotzdem Zugriff über TMemIniFile, damit Vista nicht rummeckert oder muss ich das Auslesen von Hand machen? Ich habe hier beim Testen noch die Vermutung, dass die Verzeichnis-Virtualisierung auch noch ne Reihe spielt. Manchmal kann ich als User aus in die Ini eintragen (per Admin.-Editor), der scheint das aber nicht richtig auszulesen. Heiko |
Re: Vista, TIniFile, Inis im Programmverzeichnis
Hi,
der bei der Installation von Vista eingerichtete Hauptbenutzer ist zwar in der Gruppe Administratoren, jedoch werden Programme erstmal grundsätzlich ohne Admin-Rechte gestartet. Lösungsansätze: - Du gibst dem Programmverzeichnis deines Programms Schreibberechtigung für alle Benutzer - Du startest das Programm als Administrator (Rechtsklick - "Als Administrator ausführen". Die sogenannte "Benutzerkontensteuerung", die hier bei Vista im Hintergrund läuft, verursacht einen Großteil der Probleme, die es mit Vista gibt :-( Aber diese Probleme gibt es halt meistens nur bei Software, die meint, sie muss ihre Daten unbedingt im Programmverzeichnis ablegen ;-) Gruß, Patrick |
Re: Vista, TIniFile, Inis im Programmverzeichnis
Hallo,
jaja ;) nur wie gehe ich denn dann vor ?. Nachmal der Hintergrund. Mein Programm arbeitet mti mehreren Mandanten. Jeder Mandant ist dabei genau eine Datenbank (Firebird). Ich habe das so gelöst, dass das Programm zweimal installiert wird (naja, einmal installiert, dann kopiert). Im Exe-Pfad gibt es eine Datei, die sagt, wo die DB liegt. Der gleiche User hat auf seinem Desktop zwei Icons, je eines für jeden Mandanten (das ist genauso gewollt). Ich habe also 2 Pfade. Wo soll ich denn den Pfad sonst hinpacken ? Die Frage war ja, ob das über eine "versteckte Ini" oder halt ne XML gelöst wird. Jetzt sieht es so aus, als ob mein Programm den Wert aus der Ini (der ist als Admin eingetragen) gar nicht ausliest (Aufgrund der Virtualisierung) Heiko |
Re: Vista, TIniFile, Inis im Programmverzeichnis
Zitat:
|
Re: Vista, TIniFile, Inis im Programmverzeichnis
Zitat:
|
Re: Vista, TIniFile, Inis im Programmverzeichnis
Hallo,
nein! :=) die Config steht im gleichen Verzeichnis wie die Exe. das Problem ist, dass Vista u.a. Schreibzugriffe auf Inis virtualisiert, die werden dann ins Anwendungsverzeichnis (Benutzer oder früher "Dokumente und Einstellungen" gepackt. Ich werde das mit dem DB-Pfad einfach anderes lösen (Textdatei, eine Zeile, Endung conf). Für XML ist keine Zeit. Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:08 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-2025 by Thomas Breitkreuz