Bonjour,

J'essaye d'utiliser le SDK de Nero (plus spécifiquement NeroVisionAPI) sous Visual C++. Je cherche à avoir accès aux méthodes de différentes interfaces dont la première est IMediaAnalyzer. Je ne sais pas comment me servir d'une "instance" de cette interface .. je ne sais pas comment l'initialiser.

La seule interface dont IMediaAnalyzer hérite est IUnKnown. Est-il possible d'utiliser la méthode QueryInterface à partir de cette interface ? Cela donnerait quelque chose comme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
IMediaAnalyzer *mediaAnalyzer = NULL;
IUnknown * pUnKnown;
pUnKnown->QueryInterface(__uuidof(IMediaAnalyzer),(LPVOID *) &mediaAnalyzer);
IFileInfo ** fileInfo = NULL;
mediaAnalyzer->raw_AddFile((BSTR)psPath,fileInfo);
Sauf que je ne sait pas comment initialiser pUnKnown.

Ou alors, dans la classe dans laquelle j'écris, je peux avoir accès à un pointeur (m_pProject) sur une autre interface (IProject .. mais IMediaAnalyzer n'en hérite pas). Je pourrais donc faire :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
(GetPageData ()->m_pProject)->QueryInterface(__uuidof(IMediaAnalyzer),(LPVOID *) &mediaAnalyzer);
Je n'ai pas de problème à la compilation, mais à l'exécution mediaAnalyzer est toujours NULL. J'ai beau avoir lu le sujet http://www.developpez.net/forums/d25...-ligne-code/#4 et d'autres choses, je ne vois pas comment je peux utiliser correctement la méthode QueryInterface ou comment initialiser correctement mon mediaAnalyzer.

Quelqu'un est-il capable d'éclairer ma lante un peu terne ?

Merci,

Sly