![]() |
Dialog "Zeitzone ändern" nachbauen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo DPler,
ich würde gern in meinem Programm die Option anbieten die Zeitzone des Systems zu ändern, ähnlich dem Windows Dialog. Anhang 43512 Mithilfe der Registry konnte ich mir schon eine ComboBox bauen die die Liste der Zeitzonen enthält, zumindest unter Windows XP hat dies funktioniert für Windows 7 muss ich da wohl noch was anpassen. Aber zu meinem eigentlichen Problem, wie bekomme ich raus welche Zeitzone (also aus der Liste) zur Zeit eingestellt ist? Mit GetTimeZoneInformation() z.B. erhalte ich nur "Mitteleuropäische Zeit" und nicht "(UTC+01:00) Amsterdam, Berlin, Bern, Rom, Stockholm, Wien" wie komme ich also an letzteres ran? Und wie ändere ich dann die Zeitzone wenn ich eine andere Zone aus der Liste auswähle? Ich bin gerade etwas ratlos. :gruebel: |
AW: Dialog "Zeitzone ändern" nachbauen
Hmmm, es gibt den Dialog doch schon ... einfach in die Systemeinstellung und die Zeitzone ändern, schon wird die Zeitzone des Systems geändert.
Warum willst du einen Dialog nachbauen, obwohl es den schon gibt? Oder kann es evtl. sein, dass du die Zeitzone eigentlich nur für deine Anwendung ändern müsstest (wenn du nur wüsstest wie)? |
AW: Dialog "Zeitzone ändern" nachbauen
Zitat:
Der Anwender soll aber ein paar Optionen doch ändern können, Datum und Uhrzeit. Da habe ich gedacht warum nicht auch die Zeitzone, wichtig wäre das nicht ist mehr interessehalber ob es geht. |
AW: Dialog "Zeitzone ändern" nachbauen
Delphi-Quellcode:
Oder so - tut das Gleiche:
uses Shellapi;
... ShellExecute(Handle, 'open', 'control', 'date/time', nil, SW_SHOW); ...
Delphi-Quellcode:
procedure TForm1.ButtonClick(Sender: TObject);
var FN, strParams : String; begin //rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,/ strParams:= 'shell32.dll,Control_RunDLL timedate.cpl,,/'; FN:='rundll32.exe'; ShellExecute(Application.Handle,NIL,PWChar(FN), PWChar(strParams),NIL, SW_Normal); end; |
AW: Dialog "Zeitzone ändern" nachbauen
Zitat:
|
AW: Dialog "Zeitzone ändern" nachbauen
Moin,
such mal nach "GetTimeZoneInformation" und "SetTimeZoneInformation" . . . da sollte sich noch was finden lassen. |
AW: Dialog "Zeitzone ändern" nachbauen
Zitat:
|
AW: Dialog "Zeitzone ändern" nachbauen
Die erweiterten Informationen stehen in der Registry: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
Die Frage ist jetzt, ob es dafür eine API Funktion gibt oder ob man die selbst zuordnen und auslesen muss. |
AW: Dialog "Zeitzone ändern" nachbauen
Zitat:
Die Frage ist eher steht da auch irgendwo welche Zeitzone zur Zeit aktuell eingestellt ist und lässt sich das dort ändern und wenn ja wie? Ich denke einfach etwas in der Registry ändern heißt ja nicht unbedingt das das System die Änderung auch mitbekommt und sofort anwendet. Fragen über Fragen. ;-) |
AW: Dialog "Zeitzone ändern" nachbauen
Was willst du den jetzt machen? Ich dachte dir geht es darum die erweiterten Informationen anzuzeigen? Das diese Information nur zum Lesen und Anzeigen da sind sollte wohl klar sein. Ändern der Zeitzone geht mit SetTimeZone....irgendwas.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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