質問: beforetime end sub <実行結果> no 現在の取得値 → 前回との差 ------------------------------------ 0 : 225661890149886 → 初回取得値 1 : 225661890149886 → 0 2 : 225661890149886 → 0 3 : 225661890149886 → 0 4 : 225661890149886 → 0 5 : 225661890149886 → 0 6 : 225661890149886 → 0 7 : 225661890149886 → 0 8 : 225661890149886 → 0 9 : 225661890149886 → 0 10 : 225661890149886 → 0 11 : 225666185117197 → 4294967311 12 : 225666185117197 → 0 13 : 225666185117197 → 0 14 : 225666185117197 → 0 15 : 225666185117197 → 0 16 : 225666185117197 → 0 17 : 225666185117197 → 0 18 : 225666185117197 → 0 19 : 225666185117197 → 0 20 : 225666185117213 → 16 以上
回答: vbのバージョンと関数定義が間違っています。 > handles buttonrun.click このコードは vb.net 以降のもの。 vb.net 以前(vb6.0など)と大きく仕様変更がありました。 処理のベースが 16bit→32bit に変わりました。 http://msdn.microsoft.com/ja-jp/library/dd297710.aspx > private declare function gettickcount lib "kernel32" () as long この定義は vb.net 以前のものですので、long を integer に 変更する必要があります。 ただ、gettickcount って system.environment.tickcount がフレームワーク上から呼び出していたような気もします。 http://dobon.net/vb/dotnet/system/tickcount.html 自分で初心者と言っているような人が api 宣言使うより、 フレームワークの関数を利用した方がいいと思います。