Страницы

Поиск по вопросам

четверг, 16 мая 2019 г.

Как использовать system(wmic) в DLL?

Пишу первую DLL (учусь), и вопрос, как использовать эту функцию?
system("wmic path win32_physicalmedia get SerialNumber");
мне нужно вывести в консоль ид жёсткого диска


Ответ

#include // здесь хранятся объявления функций WinApi #include // std::cout
int main() { char lpDriveLabel[30]{}; // сюда запишем метку диска char lpDriveFs[30]{}; // сюда запишем файловую систему (FAT32, NTFS...) DWORD nDriveSerialNum = 0; // серийный номер диска DWORD nDriveLabelSize = sizeof(lpDriveLabel); // размер буфера GetVolumeInformationA( // WinApi функция, дающая ин-цию о диске "c:/", // путь к необходимому диску lpDriveLabel, // буфер для хранения метки диска sizeof(lpDriveLabel), // размер буфера для метки &nDriveSerialNum, // адрес переменной, куда записать ин-цию о серийном ном. &nDriveLabelSize, // адрес переменной, где хранится размер буфера NULL, // какие-то флаги (нам неважно) lpDriveFs, // буфер для хранения названия файловой системы диска sizeof(lpDriveFs) // размер буфера для файловой системы ); std::cout << "Серийный номер диска C: " << nDriveSerialNum << "
"; // вывод в консоль };
После этого будете выводить на экран значение переменной nDriveSerialNum - это и есть серийный номер диска.

Комментариев нет:

Отправить комментарий