C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 4 - LoadTypeLib / COM-справка / Приложение

Шаг 4 - LoadTypeLib

Загружает и регистрирует библиотеку типа.

HRESULT LoadTypeLib
( 
	OLECHAR FAR* szFile, 
	ITypeLib FAR* FAR*pptlib
);

Параметры:

  • szFile - Имя файла, из которого функция должна попытаться загрузить библиотеку типа.
  • pptlib - Принимает указатель на загруженную библиотеку.

Коды возврата:
Из возвращенного HRESULT получают один из следующих кодов возврата:

Код возвратаЗначение
S_OKУспех.
E_OUTOFMEMORYHe хватает памяти.
E_INVALIDARGОдин или несколько аргументов неверны.
TYPE_E_IOERRORФункция не может выполнить запись в файл.
TYPE_E_INVALIDSTATEHe удается открыть библиотеку типа.
TYPE_E_INVDATAREADФункция не может читать из файла.
TYPE_E_UNSUPFORMATБиблиотека типа имеет старый формат.
DISP_E_UNKNOWNLCIDИдентификатор местности (LCID) в DLL OLE не найден.
TYPE_E_CANTLOADLIBRARYИдентификатор местности (LCID) в DLL OLE не найден.
ДругиеМогут возвращаться любые ошибки FACILITY_STORAGE.

Комментарии:
Функция LoadTypeLib загружает библиотеку типа (обычно созданную с помощью MkTypLib), которая хранится в указанном файле. Если szFile задает только имя файла без пути, то функция выполняет поиск файла, а дальше поступает следующим образом:
Если файл представляет собой автономную библиотеку типа, реализованную с помощью Typelib.dll, то библиотека загружается непосредственно.
Если файл — это DLL или исполняемый файл, то он загружается. По умолчанию библиотека типа извлекается из первого ресурса с типом TypeLib. Для загрузки ресурса с другим номером добавьте к szFile целочисленный индекс. Например:

LoadTypeLib("C:\MONTANA\EXE\MFA.EXE\3",  pptlib); 

Данный оператор загружает ресурс 3 из файла Mfa.exe.
Если файл не относится ни к одному из перечисленных выше типов, его имя преобразуется в моникер (объект, представляющий собой ссылку), после чего выполняется разрешение моникера. Это позволяет LoadTypeLib выполнять загрузку внешних (foreign) библиотек типа, например, тех, что находятся в памяти. Внешние библиотеки не могут располагаться в DLL или исполняемом файле. Подробнее о моникерах см. OLE Programmer's Reference в Win32 SDK
Если библиотека уже загружена, то LoadTypeLib увеличивает ее счетчик ссылок и возвращает указатель на загруженную библиотеку.
Для поддержания обратной совместимости LoadTypeLib будет регистрировать библиотеку типа, если в параметре szFile не задан путь. Если путь задан, то функция не будет ее регистрировать. Для регистрации библиотеки рекомендуется использовать RegisterTypeLib.


| |
Автор Каев Артем.
[AD]