OVH Cloud OVH Cloud

Cherche doc et liens pour gravure de CDs

32 réponses
Avatar
Michaël Delva
Bonsoir à tous,

j'ai cherché pas de temps là dessus, et mis à part des liens de la MSDN sur
IMAPI, j'ai rien trouvé d'autre...

Je voudrais permettre la gravure de CDs depuis mon soft, et de préférence
grâce aux ASPI, parce qu'IMAPI est réservé à Windows XP si j'ai bien saisi.

Mais rien à me mettre sous la dent...

Si vous avez du code source de logiciels qui font ça, c'est encore mieux
;-)

Merci d'avance

10 réponses

1 2 3 4
Avatar
Vincent Burel
"Michaël Delva" wrote in message
news:
"Vincent Burel" wrote in
news:c1igii$si$:

> pourtant c'est simple !
>
> CLASSNOTREG = CLASS NOT REGISTERED.
> vous êtes sur un système qui ne connait pas le composant COM que vous
> voulez instancier.
> tout simplement parce qu'il n'est pas installé...

J'ai pourtant installé le dernier Windows Platform SDK... J'ai même tenté
de remplacer mes anciens fichiers.



ca sert à rien, MSDiscMasterObj est un objet COM installé avec Windows XP,
pas avec le SDK

> peut-être même
> n'êtes vous pas sous XP !?

Faut pas pousser non plus!! :-D Oui je galère, mais bon...



Bon...
Ben alors c'est que vous n'avez pas les bon GUID .
parce que je peux vous assurer que le CoCreate... ci dessous, ne renvois pas
CLASS NOT REGISTERED sous windows XP.

static GUID myCLSID_MSDiscMasterObj
={0x520CCA63,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};
static GUID myIID_IDiscMaster
={0x520CCA62,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};
CoCreateInstance(&myCLSID_MSDiscMasterObj, NULL,CLSCTX_ALL,
&myIID_IDiscMaster, (void**)&(pDiscMaster));

Dernière hypothèse, vous avez créer une fois votre pDiscMaster mais vous ne
l'avez pas détruit... Rebootez... De manière générale dès que vous
programmer mal ce composant : rebootez ... c'est un composant système
globale et à partir du moment où il est planté, ca déconne.

VB
Avatar
Michaël Delva
"Vincent Burel" wrote in
news:c1in89$39v$:


"Michaël Delva" wrote in message
news:
"Vincent Burel" wrote in
news:c1igii$si$:

> pourtant c'est simple !
>
> CLASSNOTREG = CLASS NOT REGISTERED.
> vous êtes sur un système qui ne connait pas le composant COM que
> vous voulez instancier.
> tout simplement parce qu'il n'est pas installé...

J'ai pourtant installé le dernier Windows Platform SDK... J'ai même
tenté de remplacer mes anciens fichiers.



ca sert à rien, MSDiscMasterObj est un objet COM installé avec Windows
XP, pas avec le SDK

> peut-être même
> n'êtes vous pas sous XP !?

Faut pas pousser non plus!! :-D Oui je galère, mais bon...



Bon...
Ben alors c'est que vous n'avez pas les bon GUID .
parce que je peux vous assurer que le CoCreate... ci dessous, ne
renvois pas CLASS NOT REGISTERED sous windows XP.

static GUID myCLSID_MSDiscMasterObj
={0x520CCA63,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};
static GUID myIID_IDiscMaster
={0x520CCA62,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};
CoCreateInstance(&myCLSID_MSDiscMasterObj, NULL,CLSCTX_ALL,
&myIID_IDiscMaster, (void**)&(pDiscMaster));

Dernière hypothèse, vous avez créer une fois votre pDiscMaster mais
vous ne l'avez pas détruit... Rebootez... De manière générale dès que
vous programmer mal ce composant : rebootez ... c'est un composant
système globale et à partir du moment où il est planté, ca déconne.

VB





Bon ben ça ne fonctionne toujours pas chez moi...

Le CoCreate ne renvoit rien...

Je sais pas comment ça se fait, mais j'y regarderai plus tard...
Avatar
Vincent Burel
"Michaël Delva" wrote in message
news:
"Vincent Burel" wrote in
news:c1in89$39v$:

Bon ben ça ne fonctionne toujours pas chez moi...

Le CoCreate ne renvoit rien...



comment ca rien !? il renvoie bien un valeur bon sang !

VB
Avatar
Michaël Delva
"Vincent Burel" wrote in news:c1itoi$dkl$1
@news-reader4.wanadoo.fr:


"Michaël Delva" wrote in message
news:
"Vincent Burel" wrote in
news:c1in89$39v$:

Bon ben ça ne fonctionne toujours pas chez moi...

Le CoCreate ne renvoit rien...



comment ca rien !? il renvoie bien un valeur bon sang !

VB




Ben non!! C'est ça qui est pas normal!!

//-----
HRESULT hr = CoInitialize(NULL);
if (FAILED(hr))
{
ShowMessage("Impossible d'initialiser la librairie COM");
return;
}

IDiscMaster *pDM = NULL;

static const GUID myCLSID_MSDiscMasterObj
={0x520CCA63,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};
static const GUID myIID_IDiscMaster
={0x520CCA62,0x51A5,0x11D3,0x91,0x44,0x00,0x10,0x4B,0xA1,0x1C,0x5E};

hr = CoCreateInstance(
myCLSID_MSDiscMasterObj,
NULL,
CLSCTX_ALL,
myIID_IDiscMaster,
(void**)&(pDM));

if (FAILED(hr))
{
switch (hr)
{
case REGDB_E_CLASSNOTREG:
ShowMessage("REGDB_E_CLASSNOTREG ");
break;
case CLASS_E_NOAGGREGATION:
ShowMessage("CLASS_E_NOAGGREGATION");
break;
case E_NOINTERFACE:
ShowMessage("E_NOINTERFACE");
break;
case S_OK:
ShowMessage("S_OK");
break;
default:
ShowMessage("Default");
break;
}

CoUninitialize();
return;
}
//-----

Pour les codes de retour du CoCreateInstance, je tiens ça de la doc...

Et il m'affiche Default...
Avatar
Quentin Pouplard
Michaël Delva wrote:
Pour les codes de retour du CoCreateInstance, je tiens ça de la doc...

Et il m'affiche Default...



et que vaut hr?

--
Quentin Pouplard (Tene/MyOE)
http://www.myoe.org | http://graff.alrj.org
Avatar
Michaël Delva
"Quentin Pouplard" wrote in news:57_2004_13032_
:



Michaël Delva wrote:
Pour les codes de retour du CoCreateInstance, je tiens ça de la doc...

Et il m'affiche Default...



et que vaut hr?




Ben je n'ai aucune valeur pour hr...??
Avatar
Quentin Pouplard
Michaël Delva wrote:
"Quentin Pouplard" wrote in news:57_2004_13032_
:

>
>
> Michaël Delva wrote:
> > Pour les codes de retour du CoCreateInstance, je tiens ça de la
> > doc...
> >
> > Et il m'affiche Default...
>
> et que vaut hr?
>

Ben je n'ai aucune valeur pour hr...??



Tu inventes la variables qui n'a pas de valeur là...? Je te parie une
villa avec piscine, jacuzzi et tout ce qui va avec que pourtant hr a
bien une valeur...

--
Quentin Pouplard (Tene/MyOE)
http://www.myoe.org | http://graff.alrj.org
Avatar
AMcD®
Michaël Delva wrote:

Ben je n'ai aucune valeur pour hr...??



Tu le fais exprès ou quoi ? Il y a bien une valeur qui est retournée ! 0,
NULL, Pi/12 ou ce que tu veux, mais quelque chose, forcément.

--
AMcD®

http://arnold.mcdonald.free.fr/
Avatar
Christian ASTOR
Michaël Delva a écrit:

Ben je n'ai aucune valeur pour hr...??



Ben s'il passe ds default, c'est qu'il a une autre valeur que celles des
case (?!)
Pourquoi ne mets-tu pas un break en Debug avant if (FAILED(hr)) pour
connaitre sa valeur (re-?!)
En plus
if (FAILED(hr))... case S_OK : c'est plutôt absurde...
Avatar
Dominique Vaufreydaz
Bonjour,

hr = CoCreateInstance(
myCLSID_MSDiscMasterObj,
NULL,
CLSCTX_ALL,
myIID_IDiscMaster,
(void**)&(pDM));



Bon, meme si tu fais juste :
HRESULT hr;

Ben il a une valeur, c'est n'importe quoi, mais il en a une !

if (FAILED(hr))
{
switch (hr)
{
case REGDB_E_CLASSNOTREG:
ShowMessage("REGDB_E_CLASSNOTREG ");
break;
case CLASS_E_NOAGGREGATION:
ShowMessage("CLASS_E_NOAGGREGATION");
break;
case E_NOINTERFACE:
ShowMessage("E_NOINTERFACE");
break;
case S_OK:
ShowMessage("S_OK");
break;
default:
ShowMessage("Default");
break;
}



Tu regardes en debug la valeur comme le dis christian,
et ensuite tu fais click droit sur REGDB_E_CLASSNOTREG
go to definition (en anglais dans mon texte) et tu regardes autours
les definition qui pourrait avoir la valeur qui t'es renvoye.
Le fait que tu passes dans le default ne signifie pas que tu
n'as pas de valeur mais que tu n'as pas de valeur liste dans ta liste.


Doms.
--
Impose ta chance, serre ton bonheur et va vers ton risque.
A te regarder, ils s'habitueront.
René Char, Les Matinaux.
----
http://Dominique.Vaufreydaz.free.fr/
http://TitchKaRa.free.fr/
http://logiciels.ntfaqfr.com/
1 2 3 4