0

VB6構造をマーシャリングしようとしていますが、日付タイプをマーシャリングする方法がわかりません。例:DateSaved As Date

および次の文字列配列:FASTNESSNAME(1 To 6)As String * 16

助けてくれてありがとう。

4

1 に答える 1

1

VB6の日付は、.NETの日付(どちらも8バイト)と非常に似ているため、System.DateTimeとしてマーシャリングする必要があります。

固定長の文字列と1ベースの配列は、.NETではサポートされていません。固定長の文字列の場合、カスタム.NETクラスを使用できますか?

これに加えて<VBFixedString(20)>、固定文字列を定義するために使用できますが、これはVB6で期待するのと同じようには機能しません。これを構造体で使用する場合:

Private Structure FixedStr
    <VBFixedString(20)> Dim strTest As String
End Structure

そして、コードで使用します-異なる結果を得ることができます:

Dim fs As FixedStr
fs.strTest = "1234567890123456789012345"

MsgBox(Len(fs)) '<- Shows 20
MsgBox(Len(fs.strTest)) '<- Shows 25
于 2011-01-26T15:58:39.727 に答える