Cd rom obligatoire

Signaler
Messages postés
947
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
5 avril 2008
-
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Bonjour,


Je voudrais savoir si vous pouviez me mettre juste sur la voie pour realiser un programme qui demmanderais qu'un cd rom special est toujours dans le lecteur pour que le programme ne s'arrete pas.

Je penser tout d'accord à une façon trés basique, mais qui releve beaucoup de 'failles'; lancer en meme temps que le programme en question (stoquer sur le dd) un autre programme qui agira suivant une while et qui testera toutes les 10 secondes si un fichier testeur et contenu dans le lecteur cd, et qu'il correspondt en taille, nom extension, voir les 10 derniers bit identique.

- Savez comment peut ton faire que sur le meme programme qui ce lance, un genre de 'processus' ce fase toute les x secondes tout en executant normalement le reste du programme ? (forme de timer independant)
- Y'atil un moyen efficace de determiner le lecteur de CD-ROM installer par defaut (sous windows).
- Peut-on obtenir le nom du volume (cd rom) contenant dans un lecteur ?

Merci d'avance.

3 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
pourquoi 'LE' au singulier, j'ai des tours avec 3 lecteurs CD/DVD, alors...
sous Windows: GetDriveType()

ciao...
BruNews, MVP VC++
Messages postés
947
Date d'inscription
mercredi 19 novembre 2003
Statut
Membre
Dernière intervention
5 avril 2008
3
Salut,
C'est vrai ta pas tord! merci pour ta réponse jy prlongerais dessus, mais il doit bien avoir un moyen de deja recolter le numero des lecteurs consider comme lecteur cd, puis de selectionner le premier venu.
Parcontre pour la premiere question je suis au stat null
Savez comment peut ton faire que sur le meme programme qui ce lance, un genre de 'processus' ce fase toute les x secondes tout en executant normalement le reste du programme ? (forme de timer independant)

merci
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Exemple qui remplit un combobox de la liste des lecteurs CD, tu adapteras pour mettre dans un tableau:
void __stdcall FillCmbDrives(HWND hcmb)
{
DWORD dwdrvs;
char szdrv[4];
if(!(dwdrvs = GetLogicalDrives())) return;
*((DWORD*)&szdrv) = 0x5C3A41;
goDrvs:
if(dwdrvs & 1)
if(GetDriveType(szdrv) == DRIVE_FIXED)
SendMessage(hcmb, CB_ADDSTRING, 0, (long) szdrv);
szdrv[0]++;
if(dwdrvs >>= 1) goto goDrvs;
SendMessage(hcmb, CB_SETCURSEL, 0, 0);
}

Une verif dans un thread avec GetVolumeInformation() et le tour est joué.

ciao...
BruNews, MVP VC++