VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 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
が取り除かれないのでデータがうまく表示されません。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -