Познавательный блог Мобильная врсия

Страницы

Промо

Как определить наличие дискеты или флешки на C++

Как определить наличие дискеты или флешки на C++.

Для того, чтобы определить есть ли в дисководе дискета, нам понадобится WinAPI функция IsDiskInDrive.
Функция проверки наличия носителя в дисководе, работает для всех типов сменных носителей (Floppy, USB, CD-ROM и т.д.)

#include <stdafx.h>
#include <windows.h>
#include <stdio.h>

BOOL IsDiskInDrive ( LPTSTR lpszDrive )
{
UINT errmode;
TCHAR szVolName[256];
DWORD dwMaxComSize;
DWORD dwFlags;
TCHAR szFS[256];
BOOL bRes;
errmode = SetErrorMode ( SEM_FAILCRITICALERRORS );
//если не сделать SetErrorMode - выскочит стандартное окошко "Drive Not Ready"
bRes = GetVolumeInformation ( lpszDrive,
szVolName,
sizeof(szVolName),
NULL, &dwMaxComSize,
&dwFlags,
szFS, sizeof(szFS) );
SetErrorMode ( errmode );
return bRes;
}
main()
{
if(IsDiskInDrive ("a:\\"))
MessageBox(0,"Дискета на базе","Дискета на базе",0);
else
MessageBox(0,"Сунь дискету","Сунь дискету",0);
getchar();
return 0;
}

Написать комментарий








Поиск по сайту

Статистика

Мета

  Разработка и дизайн — StvPromo.ru