AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme: TInifile und Vista

Ein Thema von Graffi · begonnen am 14. Apr 2007 · letzter Beitrag vom 24. Apr 2007
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Graffi

Registriert seit: 5. Apr 2007
Ort: Duisburg
28 Beiträge
 
Delphi 6 Enterprise
 
#1

Probleme: TInifile und Vista

  Alt 14. Apr 2007, 00:15
Hallo,

sorry, Vista treibt mich langsam zum Wahnsinn:

In meiner Anwendung lese ich mehrere INI-Datei aus, was aber nur über "Ausführen als Administrator" korrekt funktioniert. Ohne Adminrechte bleiben die Ergebnisse immer leer.

Hier einmal meine stinknormale Routine. (Anm.: "CurrentDir" und "CurrentInifile" zeigen mit/ohne Admin selbigen Inhalt an, zb: "C:\program files\ich\" und "main" ... kann also nicht das Problem sein):

Delphi-Quellcode:
function ReadIniStr(Eintrag: string) : string;
var
  MyIniFile: TIniFile;
begin
  MyIniFile := TIniFile.Create(CurrentDir+CurrentInifile+'.ini');
  with MyIniFile do
  begin
    Result := Readstring(currentsection,eintrag,'');
  end;
  MyIniFile.Free;
end;
Kann mir evtl. jemand sagen, was Vista nun mal wieder von mir möchte??

Gruss, Ralf
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 00:22
CurrentDir dürfte dir zufälligerweise das Anwendungsverzeichnis liefern, weil dies das aktuelle Verzeichnis nach dem Start ist. Microsoft war bei Vista endlich mal so rigoros und hat das erstellen von Dateien im Programmverzeichnis verboten. (Einige Programmierer haben selbst nach 20 Jahren NT immer noch nicht gemerkt, dass Windows mittlerweile ein Mehrbenutzerbetriebssystem ist unter dem es auch Benutzer mit eingeschränkten Rechten gibt. Was dazu geführt hat, dass der Benutzer doch wieder als Administrator arbeitet, weil sonst diese Programme nicht liefen.)

Schreib die Ini-Dateien dort hin, wo sie in gehören, in das Verzeichnis des Benutzers:
http://www.michael-puff.de/Developer.../HOMEDIR.shtml
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Graffi

Registriert seit: 5. Apr 2007
Ort: Duisburg
28 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 01:22
[quote="Luckie"]CurrentDir dürfte dir zufälligerweise das Anwendungsverzeichnis liefern, weil dies das aktuelle Verzeichnis nach dem Start ist./quote]

Nein, das sind meine internen Variablennamen:
Delphi-Quellcode:
Var CurrentIniFile : string;
    CurrentSection : string;
    CurrentDir : string;
Wie schon geschrieben, die Inhalte dieser Variablen sind -unabhängig von den Zugriffsrechten- vollig identisch.

Die ganze Abwicklung über z.B. %Home% halte ich nicht unbedingt für sinnvoll, da z.B. "Registrationsdaten" nur einmalig eingegeben werden sollten ...
  Mit Zitat antworten Zitat
Nuclear-Ping
(Gast)

n/a Beiträge
 
#4

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 01:49
So wie ich es verstanden habe ist es unter Vista eben nicht mehr so, dass Registrierungsdaten nur einmal gespeichert werden und dann von jedem Benutzerkonto aus abgerufen werden können. Stichpunkt "Virtualization".

Schau mal auf http://msdn2.microsoft.com/en-us/library/aa905330.aspx
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 03:01
Und wie kommt der Wert von CurrebtDir zu stande?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Graffi

Registriert seit: 5. Apr 2007
Ort: Duisburg
28 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 03:58
Wie schon geschrieben, sind die folgenden Variablen VON MIR:

Delphi-Quellcode:
Var CurrentIniFile : string;
    CurrentSection : string;
    CurrentDir : string;
Diese setze ich erst in meiner Anwendung.

Probleme macht diese Routine:

Delphi-Quellcode:
function ReadIniStr(Eintrag: string) : string;
var
  MyIniFile: TIniFile;
begin
  MyIniFile := TIniFile.Create(CurrentDir+CurrentInifile+'.ini');
  with MyIniFile do
  begin
    Result := Readstring(currentsection,eintrag,'');
  end;
  MyIniFile.Free;
end;
Nur unter Admin-Rechten kommen hier Ergebnisse!!
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#7

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 04:05
Hi!

Zitat von Graffi:
Wie schon geschrieben, sind die folgenden Variablen VON MIR:

Delphi-Quellcode:
Var CurrentIniFile : string;
    CurrentSection : string;
    CurrentDir : string;
Diese setze ich erst in meiner Anwendung.
Und auf welche Werte setzt du diese Variablen?


Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#8

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 11:47
Zitat von Luckie:
...Microsoft war bei Vista endlich mal so rigoros und hat das erstellen von Dateien im Programmverzeichnis verboten...
Luckie, Du hast wohl kein Vista ? Sei froh. Was heißt Programmvereichnis ? Habe soeben neuen User angelegt (-> Standardbenutzer). Dann habe ich mich als Administrator abgemeldet. Um was zu testen bin ich jetzt als "Testuser" im Windows. Dieser User hat soeben versucht einen neuen User anzulegen. Ging nicht (zu wenig Rechte). Der Testuser hat dann compiliert, also zumindest neue DCUs und EXE im Programmverzeichnis erzeugt. Dann hat er noch die INIs gelöscht. Die werden ja dann neu angelegt. Geht alles.

Was jetzt wirklich nicht geht : CD <Admin-Verzeichnis> Echt toll. Mittlerweile glaube ich, dass M$ eingesehen hat, dass es sie selber Geld kosten würde, die User unnötig zu gängeln.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#9

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 11:52
Hansa, koenntest du deine Vista-Probleme dort lassen, wo sie hingehoeren? Danke.

@Graffi: in welchen Verzeichnissen schreibst du rum, wie sehen die Berechtigungen aus, und ist UAC aktiviert oder deaktiviert?

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Probleme: TInifile und Vista

  Alt 14. Apr 2007, 11:54
Wo hast du die Programme abgelegt? Im Standardpfad c:\Program Files hat ein Standardbenutzer kein Schreibrechte. Schreibzugriffe werden virtualisiert, d.h auf ein Verzeichnis in seinem Userverzeichnis umgelenkt.
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz