Как мне вызвать ICDBurn :: GetRecorderDriveLetter () в VS2008 C ++?(Решение XP CD с записью в root) - PullRequest
0 голосов
/ 29 апреля 2011

Я пытаюсь реализовать решение, указанное в

GetSaveFileName () не возвращает путь области подготовки записи CD в XP

Я пытаюсь реализовать этов VS2008 C ++.Метод ICDBurn :: GetRecorderDriveLetter () не является статичным и поэтому не может быть вызван как записанный ( ICDBurn :: GetRecorderDriveLetter ) в ответе выше.ICDBurn не может быть создан, потому что это абстрактный класс.Как мне вызвать ICDBurn :: GetRecorderDriveLetter () из C ++?

1 Ответ

0 голосов
/ 29 апреля 2011

Сначала нужно создать объект COM.

ICDBurn* pICDBurn;
HRESULT hr = CoCreateInstance(CLSID_CDBurn, NULL,CLSCTX_INPROC_SERVER,IID_ICDBurn,(LPVOID*)&pICDBurn);
if (SUCCEEDED(hr))
{

// do something ...
pICDBurn->Release();

}
...