Простой объект ATL по умолчанию имеет следующее наверху своего файла IDL:
import "oaidl.idl";
import "ocidl.idl";
Каковы эти файлы для, и как я знаю, когда я должен импортировать их? Есть ли какая-либо документация, которая описывает то, что определяется в этих двух файлах? Я понятия не имею, что обозначают "OA" и "oc", и в самих файлах нет никаких полезных комментариев.
oaidl.idl и ocidl.idl поставляются с Platform SDK / Windows SDK. Они используются для создания oaidl.h и ocidl.h
ocidl предназначен для контейнера OLE (например, ActiveX), а oaidl - для автоматизации OLE. поиск по oaidl.h и ocidl.h в документации MSDN или Windows SDK для получения информации об интерфейсах, определенных в этих двух файлах.
Вы можете не найти достаточно комментариев в файлах, но интерфейсы, которые там определены, задокументированы в MSDN.