🙌

このGUIDは私のものなので、勝手に使わないでください。

に公開

タイトルは、かつてのslashdot.jpにあった迷言のパロディです。
WSLをいじってたらこんなページVIRTUAL_STORAGE_TYPE 構造体 (virtdisk.h)にこんな構造体が載ってました。

typedef struct _VIRTUAL_STORAGE_TYPE {
  ULONG DeviceId;
  GUID  VendorId;
} VIRTUAL_STORAGE_TYPE, *PVIRTUAL_STORAGE_TYPE;

どうやらVHDファイルのベンダーIDを表すGUIDらしい。
この中で定数マクロとしてマイクロソフト社を表すGUIDは
VIRTUAL_STORAGE_TYPE_VENDOR_MICROSOFT (EC984AEC-A0F9-47e9-901F-71415A66345B)らしい。まあVHDはマイクロソフトの製品のファイル形式なのでマイクロソフト以外がベンダーIDを決めることはないと思うが、とにかくこのGUIDならマイクロソフトということらしい。素直にテキストで社名を追加してこういう風にしたら良くないかと思ったけどどうなんだろう。

typedef struct _VIRTUAL_STORAGE_TYPE {
  ULONG DeviceId;
  GUID  VendorId;
  LPCWSTR VendorName;
} VIRTUAL_STORAGE_TYPE, *PVIRTUAL_STORAGE_TYPE;

Discussion