先用GetLogicalDriveStrings取得目前计算机上的所有磁盘驱动器代号,再用GetDriveType检查何者为光驱。 GetLogicalDriveStrings( DWORD nBufferLength, //字符串(lpBuffer)长度 LPTSTR lpBuffer); //字符串指针 UINT GetDriveType( LPCTSTR lpRootPathName) //磁盘驱动器代码字符串例如a:\ GetDriveType的传回值意义如下: 0 代表无法判定指定的磁盘驱动器型态 1 代表找不到指定的磁盘驱动器 DRIVE_REMOVABLE 软盘机 DRIVE_FIXED 硬盘机 DRIVE_REMOTE 网络磁盘驱动器 DRIVE_CDROM 光驱 DRIVE_RAMDISK 内存磁盘驱动器 由GetLigicalDriveStrings()传回的字符串中,字符的排列方式为 [磁盘驱动器代号]+[:]+[\]+零字符,例如a:\后面有一个零字符,每个磁盘驱动器代号共占4bytes
|