我正在开发一个必须处理专有二进制协议的TCP/IP客户端.我正在考虑使用用户定义的类型来表示协议头,并使用CopyMemory将数据与UDT和字节数组进行混洗.但是,似乎VB6添加了填充字节以对齐用户定义的类型.有没有办法强制VB6不填充UDT,类似于#pragma pack许多C/C++编译器中提供的指令?也许是一个传递给编译器的特殊开关?
#pragma pack
没有.
最好的办法是用C或C++(你有的地方#pragma pack)编写低级代码,然后通过COM公开接口.