IOCTL_DISK_GET_STORAGEID WinCE vs Linux 区别?

IOCTL_DISK_GET_STORAGEID WinCE vs Linux difference?

我正在尝试匹配来自 Linux 中 WinCE 程序的函数。

该函数使用WinCE调用zu输出SD卡标识符。

但问题是WINCE函数输出

0280XXXXXX 作为序列号 - 而我在 /sys/block/mmcblk0/device/serial 中的 linux 上得到相同的数字,但第一个字节 (02) 丢失(输出为 80XXXXXX)

熟悉 wince 的人知道 IOCTL_DISK_GET_STORAGEID 函数从哪里获取第一个字节吗?

对于 SD 卡,WinCE 输出看起来有点奇怪。

假设您的 WinCE 设备使用标准的 Microsoft SD 卡驱动程序,序列号取自卡的 CID(即它只有 32 位),并且在 STORAGE_IDENTIFICATION 结构时被格式化为 %08X由驱动生成。

因此,除非您用于获取序列号的程序出现错误,否则我的猜测是 WinCE 设备使用了自定义 SD 卡驱动程序(例如,结合了制造商 ID 和序列号的驱动程序,或者只是有一个错误)。