我试图将Jim Kyle在90年代早期编写的btrieve代码升级到VB.NET,并且遇到了联合结构的问题.旧的C代码如下:
typedef struct {
union {
struct {
PGPTR PgSeq; // 00 - page number
int Usage; // 04 - match with usage count
int Version; // 06 - version code, <0 if owned
} v5;
struct {
int RecSig; // 00 - 'FC'
int SeqNbr; // 02 - always binary zeroes
long Usage; // 04 - usage count
} v6;
} r1;
int PagSize; // 08 - in bytes
} FCRTOP;
Run Code Online (Sandbox Code Playgroud)
到目前为止,我有:
<StructLayout(LayoutKind.Explicit)> _
Structure FCRTOP
<FieldOffset(0)> Public …Run Code Online (Sandbox Code Playgroud)