>146
windows.h とかで構造体が定義されている場合、普通 #pragma pack とかでアラインメントは強制されている。
つまり、「vc2008のプロジェクト設定で構造体のアライメントを1,2,4,8,16と変えて」 sizeof の結果が変わること自体がおかしい。