Frage : Bekehrtzeit von EST zu localtime

Hallo, haben

I diese Funktion gefunden: , um Zeit verwendet zu werden SystemTimeToTzSpecificLocalTime von anderem Timezone in Ihr lokales time.

The Problem umzuwandeln ist ich möchte Zeit von EST in meine Ortszeit umwandeln und ich kann nicht den lpTimeZoneInformation Parameter füllen. Ich habe in ein Beispiel gesehen, das es Null war, als, umwandelnd von UTC zu localtime.

Does, jedes diesen Parameter füllen können?

Antwort : Bekehrtzeit von EST zu localtime

Sie können die gleiche Funktion einfach verwenden, die den Stundenunterschied zwischen EST und UTC hinzufügt

Uns sagen lassen, dass EST UTC abzüglich 5 ist, dann, das Sie etwas Ähnliches verwenden konnten

Gebrauch
DateUtils;

{ein TDateTimePicker der Form hinzufügen}

Verfahren TForm1.Button1Click (Absender: TObject);
var
  ESTTime: TDateTime;
  Funktion ESTToSystemTime (EST: TDateTime): TDateTime;
  var
    TimeZoneInf: _TIME_ZONE_INFORMATION;
    ESTTime, LocalTime: TSystemTime;
  anfangen
    EST: = IncHour (EST, -5);
    wenn GetTimeZoneInformation (TimeZoneInf) <�>    anfangen
      DatetimetoSystemTime (EST, ESTTime);
      wenn SystemTimeToTzSpecificLocalTime (@TimeZoneInf, ESTTime, LocalTime) dann
      anfangen
        Resultat: = SystemTimeToDateTime (LocalTime);
      Ende
      sonst
        Resultat: = EST;
    Ende
    sonst
      Resultat: = EST;
  Ende;

anfangen
  ESTTime: = ESTToSystemTime (DateTimePicker1.DateTime);
Ende;
Weitere Lösungen  
 
programming4us programming4us