Страницы

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

пятница, 28 февраля 2020 г.

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

#cpp #winapi


Пишу первую DLL (учусь), и вопрос, как использовать эту функцию?

system("wmic path win32_physicalmedia get SerialNumber");


мне нужно вывести в консоль ид жёсткого диска
    


Ответы

Ответ 1



#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 << "\n"; // вывод в консоль }; После этого будете выводить на экран значение переменной nDriveSerialNum - это и есть серийный номер диска.

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

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