Gå til innhold

Finne USB Flash Drive?


Anbefalte innlegg

Skrevet

Jeg har prøvd å lete over google men finner ingen gode eksempler på hvordan jeg kan finne en removable drive (USB Flash Drive) som er koblet til maskinen. Fant jo GetLogicalDrives() men vet ikke hvordan jeg kan bruke denne, setter pris på all hjelp jeg kan få!

Videoannonse
Annonse
Skrevet

Ved hjelp av GetDriveType kan du finne ut om det er en fjernbare disk så må du bruke SetupDiGetDeviceRegistryProperty (se forklaring i GetDriveType) for å være bombesikker på at det er en usbdisk. Jeg er ikke helt sikker på om det går å finne ut at det er en flash disk.

 

For bruke av GetLogicalDrives og GetDriveType se koden under

 

 

 

#include <Windows.h>
#include <stdio.h>

int main()
{
char DriveChar		= 'A';
char DiskPathChar[]	= "X:\\";

DWORD DiskBitMask = GetLogicalDrives();

while (DiskBitMask > 0)
{
	if(DiskBitMask & 0x01) //is is a disk at this char?
	{
		printf("We got a disk at %c and it is a ",DriveChar);

		DiskPathChar[0] = DriveChar;
		UINT DriveType = GetDriveType(DiskPathChar);

		switch (DriveType)
		{
		case DRIVE_UNKNOWN:
			printf("unknown drive\n");
			break;
		case DRIVE_REMOVABLE:
			printf("removable drive\n");
			break;
		case DRIVE_FIXED:
			printf("fixed drive\n");
			break;
		case DRIVE_REMOTE:
			printf("remote drive\n");
			break;
		case DRIVE_CDROM:
			printf("CDRom drive\n");
			break;
		case DRIVE_RAMDISK:
			printf("Ramdisk drive\n");
			break;
		}
	}
	DiskBitMask = DiskBitMask >> 1;
	DriveChar++;
}
return 0;
}

 

 

 

lykke til

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...