引用:
> AB4.2 で次の様な現象があります。
> おそらくバグではないかと思います。(もしかしたら仕様変更?)
> Right$ を使用しなければ正常に動作します。
> Windows XP および 2000 で同じ現象です。
これはActiveBasicそのもののバグではなくてライブラリ側のバグですね。
修正版がでるまで待てないと言う方はこちら [ここをクリックすると内容が表示されます] [ここをクリックすると非表示にします]
Includeフォルダ内のbasicフォルダの中にあるfunction.sbpの
次の箇所を修正。
コード:
Function Right$(buf As String, length As Long) As String
Dim i As Long
i=Len(buf)
If i>length Then
Right$=ZeroString(length)
memcpy(Right$,StrPtr(buf)+i-length,length)
Else
Right$=buf
End If
End Function
を
コード:
Function Right$(buf As String, length As Long) As String
Dim i As Long
i=Len(buf)
If i>length Then
Right$=ZeroString(length)
memcpy(StrPtr(Right$),StrPtr(buf)+i-length,length)
Else
Right$=buf
End If
End Function
にしてください。
文字列ポインタにし忘れていますね。