Einzelnen Beitrag anzeigen

Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: filtetime - filetime??

  Alt 1. Jun 2008, 21:49
Zitat von Luckie:
Hilfe lesen:
Zitat:
Remarks
It is not recommended that you add and subtract values from the SYSTEMTIME structure to obtain relative times. Instead, you should

- Convert the SYSTEMTIME structure to a FILETIME structure.
- Copy the resulting FILETIME structure to a ULARGE_INTEGER structure.
- Use normal 64-bit arithmetic on the ULARGE_INTEGER value.
ja so hab ich es ja gemacht, nur funzt das nicht wirklich, hab mal nen code angehangen, vllt kann mir da jemand weiter helfen...

und nein, tdatetime kann ich nicht verwenden, dafür muss ich zuviele "grosse" units einbinden, kann also nur mit TSystemTime und TFileTime arbeiten...


das hab ich bisher (hardcoded nur zum test)

Delphi-Quellcode:
function GetDifferenzTime(TheTime: TSystemTime): TSystemTime;
var
  TempTime, CurrentTime: TSystemTime;
  TempFileTime, CurrentFileTime: FileTime;
  begin;
    Result := TheTime;
    GetLocalTime(CurrentTime);
    if SystemTimeToFileTime(TheTime, TempFileTime) then
      if SystemTimeToFileTime(CurrentTime, CurrentFileTime) then
        begin;
          TempFileTime := TFileTime(Int64(CurrentFileTime) - Int64(TempFileTime));
          if FileTimeToSystemTime(TempFileTime, TempTime) then
// hier hat er probleme beim convertieren weil davor wohl schon beim abrechnen was falsch gelaufen ist
            Result := TempTime
          else
            MessageBoxA(0, PChar('convert to systemtime fail'), 'hallocap', MB_OK or MB_ICONEXCLAMATION)
        end
      else
      MessageBoxA(0, PChar('current time fehl'), 'hallocap', MB_OK or MB_ICONEXCLAMATION)
    else
      MessageBoxA(0, PChar('temp time fehl'), 'hallocap', MB_OK or MB_ICONEXCLAMATION);
end;
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat