Bonjour,
Apres avoir reussi à compiler la librairie demandée.

Je voulais faire une simple appli qui liste les peripherique de capture en utilsant ce code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
IEnumMoniker *pClassEnum;
ICreateDevEnum *pDevEnum;
ULONG cFetched;
IMoniker *pMoniker;
HRESULT hr;
TStringList *DeviceName;
 
pDevEnum = NULL;
pClassEnum = NULL;
pMoniker = NULL;
pSrc = NULL;
 
DeviceName=new TStringList;
 
CoInitialize(NULL);
CoCreateInstance(CLSID_SystemDeviceEnum, NULL, CLSCTX_INPROC,IID_ICreateDevEnum, (void **)&pDevEnum);
 
hr=pDevEnum->CreateClassEnumerator(CLSID_VideoInputDeviceCategory, &pClassEnum, 0);
 
 
while (pClassEnum->Next(1, &pMoniker, &cFetched) == S_OK)
{
  IPropertyBag *pPropBag;
  pMoniker->BindToStorage(0, 0, IID_IPropertyBag, (void **)&pPropBag);
 
  VARIANT varName;
  VariantInit(&varName);
  hr = pPropBag->Read(L"FriendlyName",&varName,0);
  if (SUCCEEDED(hr))
  {
    Variant V(varName);
    DeviceName->Add(AnsiString(V));
  }
  VariantClear(&varName);
 
  pPropBag->Release();
  pMoniker->Release();
}
CoUninitialize();
Mais pour tester j'ai juste mis
en mettant la lib adéquate biensur.
Ca me met des problemes d'extern sur la fonction...

Comment faire...?

Merci de votre aide.
Flo