none
.NET c# et API win RRS feed

  • Question

  • bonjour voila je souhaite faire appel a une DLL de windows media foundation, c'est la première fois que je fais appel a une API win dans un code c# donc j'ai ce morceau de code:

    [DllImport("MfPlat.dll")]
            public static extern void MFCreateAttributes(
                out IMFAttributes ppMFAttributes,
                int cInitialSize
            );

    mais visual studio me dis:
    Le type ou le nom d'espace de noms 'IMFAttributes' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)

    quelqu'un peut m'expliquer pourquoi ?
    vendredi 6 mars 2009 11:24

Réponses

  • Le type IMFAttributes n'est déclaré nulle part. 

    Selon la documentation microsoft, c'est un pointeur, tu peux donc le déclarer comme tel (IntPtr). 

    Ensuite, tu peux utiliser les méthodes de l'API pour récolter les informations voulues comme GetAttribute

    Si cela ne marche pas essaie d'encapsuler la DLL MfPlat.dll en tant qu'assembly .NET (en utilisant tlbImport.exe). Tu pourras ensuite utiliser tous ces types de manière transparente. Cependant, je ne suis pas sûr que cela fonctionne pour les DLL de l'API windows.

    Louk




    mardi 10 mars 2009 08:43