Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MSDN -> Delphi [D7, WinXP]


Аноним ©   (2004-03-23 11:03:00) 

Есть такой листинг взятый с MSDN

[ccode]
ICreateDevEnum *pDevEnum = NULL;
IEnumMoniker *pEnum = NULL;

// Create the System Device Enumerator.
HRESULT hr = CoCreateInstance(CLSID_SystemDeviceEnum, NULL,
   CLSCTX_INPROC_SERVER, IID_ICreateDevEnum,
   reinterpret_cast(&pDevEnum));
if (SUCCEEDED(hr))
{
   // Create an enumerator for the video capture category.
   hr = pDevEnum->CreateClassEnumerator(
       CLSID_VideoInputDeviceCategory,
       &pEnum, 0);
}
[/ccode]

Как перевести это на Delphi? Помогите...


Аноним   (2004-03-23 12:55:00) [1]

Все нашел, спасибо.


Asdor   (2004-03-23 12:34:00) [2]

Знаешь, что такое библиотека типов?
Тебе надо импортировать в проект библиотеку типов DirectShow и прописать ее в uses вместо того, что я написал как TLB. из какой dll'ки ее импортировать, я не знаю, т.к. не занимался этим. Ищи.


Аноним   (2004-03-23 12:14:00) [3]

Я простно не знал чего подключать. Кстати пишет, что нет такого - "TLB".
Как быть?


Asdor   (2004-03-23 12:03:00) [4]


Uses ActiveX, ComObj, и TLB, где объявлены ICreateDevEnum и  IEnumMoniker;

var pDevEnum:ICreateDevEnum;
   PEnum:IEnumMoniker;
   hr:HResult;
begin
 hr:=CoCreateInstance(CLSID_SystemDeviceEnum, nil,
  CLSCTX_INPROC_SERVER, IID_ICreateDevEnum, pDevEnum);
 if Succeeded(hr) then
 begin
   hr:=pDevEnum.CreateClassEnumerator(CLSID_VideoInputDeviceCategory, pEnum, 0);
 end;
end;


И что же здесь сложного?


Наверх

Титульная страница Поиск, карта сайта Написать письмо