GetRecordInfoFromGuids() с ошибкой TYPE_E_LIBNOTREGISTERED/-2147319779/0x8002801DL
на виртуальной машине, но на моей машине развития, она отлично работает:GetRecordInfoFromGuids() терпит неудачу с TYPE_E_LIBNOTREGISTERED
HRESULT hr = GetRecordInfoFromGuids(rGuidTypeLib, 1, 0, 0, __uuidof(T), &pRecInfo);
В то же время, я могу успешно создать экземпляры COM-сервера используя CoCreateInstance()
, только эта функция не работает, поэтому она должна быть зарегистрирована.
Edit: Я подозреваю, что это может быть потому, что я указал неправильный uVerMajor
и uVerMinor
. Как я могу проверить, какая версия фактически зарегистрирована на целевой машине?
Вы можете проверить с '1' COM/OLE Viewer, в котором перечислены библиотеки типов, и' 2 ', посмотрев реестр под' HCKR \ TypeLib' (также можно найти и номера версий). –