投稿時間:2002/10/20(Sun) 11:44 投稿者名:花ちゃん
Eメール:
URL :
タイトル:Win98 より WinXP の方が処理が遅い
同じ処理をWindows98 SE celeron466Mhz メモリ127MB VB6.0(SP5) で実行した場合と WindowsXP HE(SP1) AMD 946Mhz メモリ240MB で実行した場合 WindowsXP では Windows98 の2倍以上の時間がかかります。具体的には 20000件のデータを読み込み ここで http://www.bcap.co.jp/hanafusa/VBHLP/mozi_cut.htm 紹介している文字列処理の関数を使用してListBox に表示する場合Win98が9.9秒で表示する のにWinXPでは23.1秒かかってしまいます。 通常ではWinXPの方が処理が早くて当然のはずなのですが、このようにWindowsXPでは処理が 遅くなるような関数とか使用方法とかあるのでしょうか? どなたかご存知の方、経験された方おられたら教えて頂けないでしょうか
Dim i As Long Dim RC As String List1.Clear List1.Visible = False fTimeCount '測定開始 sDataOpen 'ランダムファイルオープン For i = 1& To lngRCMax Get #lngAddFileNo, i, Add With Add RC = Right$("0000" & Trim$(Str(i)), 5) ' List1.AddItem RC & vbTab & Left$(Trim$(.Kaisya1) & Trim$(.Kaisya2), 25) & vbTab & _ Left$(Trim$(.Jyusyo1) & Trim$(.Jyusyo2), 25) & vbTab & " " & Str$(i) List1.AddItem RC & " " & _ StrCut(Trim$(.Kaisya1) & Trim$(.Kaisya2), 50) & " " & _ StrCut(Trim$(.Jyusyo1) & Trim$(.Jyusyo2), 60) & " " & Str$(i) End With Next i List1.Visible = True Debug.Print fTimeCount '測定終了
コメントアウトしている方を実行すると WinXP : 6.5 Win98 : 8.1 となります。
一旦どれかのレコードを表示するとすべてのレコードのvbNullCharが取り除かれるのですが その辺の処理のやり方が Win98 と WinXP では違うように思うのですが? データをテキストボックスに表示する前に上記を実行すると早くなるのですが、vbNullChar が取り除かれないのでデータがうまく表示されません。
|