掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
GettickCountでOver Flowのエラー (ID:38776)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
すいません。 GetTickCountでリセットされてしまう対策の関数を作成し、使用しています。 特に問題がないと思ったのですが、Over Flowのエラーが出てしまうことがあります。 出るときと出ないときがあるのでげんいんがつかめません… 関数は下記です。 function GetTime(STime: DWORD): DWORD; Var Time1,Time2:DWORD; begin Time2 := GetTickCount- STime; if GetTickCount< STime then begin Time1 := 4294967295 - STime; Time2 := GetTickCount+ Time1; end; result := Time2; end; この関数を使用しているとある処理によっては 「Time2 := GetTickCount- STime;」 の部分でOver Flowのエラーが出ます。 私なりに修正して function GetTime(STime: DWORD): DWORD; Var Time1,Time2,NowTime :DWORD; begin NowTime := GetTickCount; Time2 := NowTime - STime; if NowTime < STime then begin Time1 := 4294967295 - STime; Time2 := NowTime + Time1; end; result := Time2; end; としたらエラーは出なくなりました。 ただ、原因がわからないため、ほんとうにこの修正でよいのか、疑問です。 ただエラーが出なくなったというだけなので。 なぜ起こってしまうのかわかるかたいらっしゃいますか?
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.