![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ошибка при создании COM объекта в dll [D7, WinXP]
micky_ © (2006-02-26 11:06:00)Вот код, предлагаемый для работы с оболочкой, рекомендованный в любом FAQ:
IObject:=CreateComObject(CLSID_ShellLink);
SLink:=IObject as IShellLink;
PFile:=IObject as IPersistFile;
Если описан в коде приложения работает как часы, но при переносе этого кода в библиотеку на строке
IObject:=CreateComObject(CLSID_ShellLink);
вылетает Application Error: "Exception EOleSysError" в библиотеке
Есть мысли?
micky_ (2006-02-26 14:17:00) [1]Да, все ок, всем спасибо. Проблема была уже с именем файла.
Сергей М. (2006-02-26 13:11:00) [2]
> Может что-то ещё нужно проинициализировать?
И опять же ответ на вопрос даёт анализ ErrorCode
micky_ (2006-02-26 12:52:00) [3]>>clickmaker
>>Сергей М.
Точно, спасибо, оказывается действительно не была проинициализирована. Только теперь более интересная ситуация:
далее идет код:
PFile.Save(@FilePath, FALSE);который возвращает E_FAIL, хотя в приложении все опять же работает. Мистика. Может что-то ещё нужно проинициализировать?
clickmaker (2006-02-26 11:20:00) [4]CoInitialize вызвал?
Сергей М. (2006-02-26 11:17:00) [5]Первая мысль - проконтролировать и проанализировать EOleSysError.ErrorCode