Rémi Bernon (@rbernon) commented about dlls/windows.system.profile.systemmanufacturers/main.c:
for (; ptr - buf < buflen; ptr++) if (!*ptr) break;
- }
- return NULL;
+}
+static WCHAR *get_bios_system_serial( const char *buf, UINT len ) +{
- const struct smbios_system *system;
- const struct smbios_header *hdr;
- UINT offset;
- if (!(hdr = find_smbios_entry( SMBIOS_TYPE_SYSTEM, buf, len ))) return NULL;
- system = (const struct smbios_system *)hdr;
- offset = (const char *)system - buf + system->hdr.length;
- return get_smbios_string( system->serial, buf, offset, len );
I'm quite sure we don't want to duplicate all this code here again, and instead build this on top of wbemprox. WinRT is mostly just a new restructured interface on top of existing modules.