definiția WinAPI de tipul de suport și numărul său de serie
Uneori este necesar să se folosească posibilitatea de a verifica tipul de suport și numărul de serie. Motivele pot fi diferite de banal la dispozitivele de control în sistemul să utilizeze mijloacele de protecție se leagă la fier. Acum, vă voi arăta cum să utilizeze API-ul pentru a pune în aplicare această sarcină simplă.
Vom avea nevoie de doar 2 API - funcții:
- GetDriveType - definește și returnează un tip de suport;
- GetVolumeInformation - determină informația despre mass-media, printre care conține numărul de serie.
Luați în considerare descrierea acestor funcții în C ++ și Delphi. Prima va cuprinde GetDriveType, este foarte simplu și folosește un singur parametru - un pointer la asta. Cum ar fi "c:", "o", etc. Funcția returnează una dintre următoarele:
DRIVE_UNKNOWN - 0. unitate nedefinită / nu există
DRIVE_NO_ROOT_DIR - 1. greșit cale / cale nu indică faptul
DRIVE_REMOVABLE - de tip 2. dispozitivul se determină ca amovibil (dischetă, card flash, etc)
DRIVE_FIXED - 3. tip de dispozitiv - o unitate de disc fix (HDD)
4. Dispozitiv de tip - - DRIVE_REMOTE la distanță (de rețea) disc
DRIVE_RAMDISK - 6: disc virtual creat în memoria
Notă: Dacă parametrul este specificat pentru C / C ++ NULL. și pentru Delphi - zero tipul de dispozitiv va fi determinat pentru discul curent (de la care a fost lansat programul).
Și acum, uita-te la funcția GetVolumeInformation. De asemenea, destul de o funcție simplă, dar utilizează în mod semnificativ mai multe opțiuni.
C / C ++
Notă: În cazul în care primul parametru este specificat pentru C / C ++ NULL. și pentru Delphi - zero funcția va fi efectuată pentru discul curent (de la care a fost lansat programul).
Ei bine, acum de fapt, pentru a spori interesul într-un exemplu de cum să conectați programul de la aparat. În acest exemplu, vom lega un program de la o unitate flash. A se vedea exemplul:
C / C ++
Notă: Problema poate apărea, și cum să găsească discul de serie pentru a ști ce să compare? Foarte simplu, acest test a scrie un program, în care scrie următorul cod:
C / C ++