G
Guest
Hi,
My VS 2005 VB app reads a binary file that was created by a VS 2005 VC++
WinCE app. The VC++ app writes the following structure to the file.
typedef struct {
short ID;
TCHAR Num[10];
} PARTS_STRUCT;
In my VB code I read the file with this code...
<StructLayout(LayoutKind.Sequential, Pack:=1)> _
Public Structure Parts_Struct
Public ID As Short
<MarshalAs(UnmanagedType.TBStr, SizeConst:=10)> _
Public Num As String
End Structure
Dim Parts As New Parts_Struct
Dim fs As New FileStream(FName, FileMode.Open, FileAccess.Read)
Dim br As New BinaryReader(fs)
Parts.ID = br.ReadInt16()
Parts.Num = br.ReadChars(20)
When I run the code, the ID field is Ok, but I only get the 1st letter that
was saved in the "Num" field.
RML
My VS 2005 VB app reads a binary file that was created by a VS 2005 VC++
WinCE app. The VC++ app writes the following structure to the file.
typedef struct {
short ID;
TCHAR Num[10];
} PARTS_STRUCT;
In my VB code I read the file with this code...
<StructLayout(LayoutKind.Sequential, Pack:=1)> _
Public Structure Parts_Struct
Public ID As Short
<MarshalAs(UnmanagedType.TBStr, SizeConst:=10)> _
Public Num As String
End Structure
Dim Parts As New Parts_Struct
Dim fs As New FileStream(FName, FileMode.Open, FileAccess.Read)
Dim br As New BinaryReader(fs)
Parts.ID = br.ReadInt16()
Parts.Num = br.ReadChars(20)
When I run the code, the ID field is Ok, but I only get the 1st letter that
was saved in the "Num" field.
RML