Re: In .ini ohne Adminrechte speichern?
Schau Dir die Konstanten in dem verlinkten Artikel nochmal genau an.
|
Re: In .ini ohne Adminrechte speichern?
Statt dem Verzeichnis de Exe (Application.ExeName bzw. ParamStr(0) halt Special Folder einsetzen
http://www.delphipraxis.net/internal...t.php?t=123453 |
Re: In .ini ohne Adminrechte speichern?
Zitat:
|
Re: In .ini ohne Adminrechte speichern?
Etwa so? :gruebel:
Delphi-Quellcode:
function GetSpecialFolder(Folder: Integer): String;
begin SetLength(Result,MAX_PATH); If SHGetSpecialFolderPath(0, PChar(Result), Folder, false) then SetLength(Result,StrLen(PChar(Result))) else Result:=''; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); var ini: TIniFile; dir: String; begin Ini := TIniFile.Create(GetSpecialFolder(dir) + 'config.ini'); try Ini.WriteInteger('Default', 'Channel', ComboBox1.ItemIndex); Ini.WriteInteger('Default', 'Volume', TrackBar1.Position); Ini.WriteBool('Default', 'Proxy', cbDirectConnection.Checked); Ini.WriteString('Default', 'ProxyIP', ed_ProxyServer.Text); finally Ini.Free; end; Action:=caFree; end; end; |
Re: In .ini ohne Adminrechte speichern?
Nein, da di Typen nicht stimmen, zudem solltest du die Beiträge/Tutorials, die dir hier gepostet werden richtig durchlesen
|
Re: In .ini ohne Adminrechte speichern?
Und wie kann ich das Speicher in die .ini umgehen falls User keine Rechte zum speichern hat? Werde dann auf das Speichern verzichten, Hauptsache man kann das Programm schließen.
Geht das so ähnlich wie folg:
Delphi-Quellcode:
Speichern
if ok then begin Gespeichert Programm schließen end else begin Nicht gespeichert, da keine Rechte Programm schließen end; |
Re: In .ini ohne Adminrechte speichern?
Wenn du einen passenden Pfad wählst, hat der User auch Schreibrechte.
|
Re: In .ini ohne Adminrechte speichern?
Zitat:
Delphi-Quellcode:
var dir String;
Ini := TIniFile.Create(ExtractFilePath(GetUserdataPath(dir)) + 'Ininame.ini'); |
Re: In .ini ohne Adminrechte speichern?
Nein, weil ein out-Parameter verwendet wird.
Delphi-Quellcode:
if GetUserdataPath(dir) then
Ini := TIniFile.Create(dir + ' \Ininame.ini'); |
Re: In .ini ohne Adminrechte speichern?
Zitat:
Delphi-Quellcode:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var ini: TIniFile; dir: String; begin if GetUserdataPath(dir) then begin Ini := TIniFile.Create(dir + 'config.ini'); try Ini.WriteInteger('Default', 'Channel', ComboBox1.ItemIndex); Ini.WriteInteger('Default', 'Volume', TrackBar1.Position); Ini.WriteBool('Default', 'Proxy', cbDirectConnection.Checked); Ini.WriteString('Default', 'ProxyIP', ed_ProxyServer.Text); finally Ini.Free; end; Action:=caFree; end; end else ???? //eine Fehlermeldung einbauen und fertig? Oder Programm schließen? Sonst kriegt man es nicht zu end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 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