a maior parte do que você deseja pode ser feita com FindFirstVolume e seus amigos (o exemplo aqui cobre tudo ), para obter o tipo, você usaria GetDriveType , finalmente, SetVolumeMountPoint renomeia uma letra de unidade de dispositivo .