#include "stdafx.h"
#include <windows.h>
#include <stdio.h>
int main()
{
static BYTE buffer[0x1000];
WCHAR path[] = L"\\\\.\\PhysicalDrive0";
STORAGE_DEVICE_DESCRIPTOR* descriptor = (STORAGE_DEVICE_DESCRIPTOR*)buffer;
STORAGE_PROPERTY_QUERY p = { StorageDeviceProperty, PropertyStandardQuery };
DWORD retn;
DWORD len = wcslen(path);
while(true) {
HANDLE hDisk = CreateFile(path, 0, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
OPEN_EXISTING, 0, NULL);
if (hDisk == INVALID_HANDLE_VALUE) break;
if (!DeviceIoControl(hDisk, IOCTL_STORAGE_QUERY_PROPERTY, &p, sizeof(p),
buffer, sizeof(buffer), &retn, 0)) break;
wprintf(L"%s\n", path);
if (descriptor->VendorIdOffset >