информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Где водятся OGRыПортрет посетителя
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 С наступающим 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Zbazibo 21.11.01 01:01  Число просмотров: 1021
Автор: Паша Федорцов Статус: Незарегистрированный пользователь
<"чистая" ссылка>
<programming>
[COM] IShellLink & CoCreateInstance 21.11.01 00:20  
Автор: Паша Федорцов Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Хочу создать ярлычки программным путём C под W32 без MFC. Делаю так:

HRESULT hres = 0;
IShellLink *psl;
hres = CoInitialize(NULL);
//Получаю указатель на интерфейс
if (SUCCEEDED(hres))
hres = CoCreateInstance(CLSID_ShellLink,NULL, CLSCTX_INPROC_SERVER,
IID_IShellLink, (void**)&(psl));

Затем !SUCCEEDED(hres), тоесть функция возвращает ошибку, а именно hres == 0

П О Ч Е М У ?
[COM] IShellLink & CoCreateInstance 21.11.01 00:32  
Автор: kabanchik Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> Хочу создать ярлычки программным путём C под W32 без MFC.
> Делаю так:
>
> HRESULT hres = 0;
> IShellLink *psl;
> hres = CoInitialize(NULL);
> //Получаю указатель на интерфейс
> if (SUCCEEDED(hres))
> hres = CoCreateInstance(CLSID_ShellLink,NULL,
> CLSCTX_INPROC_SERVER,
> IID_IShellLink,
> (void**)&(psl));
>
> Затем !SUCCEEDED(hres), тоесть функция возвращает ошибку, а
> именно hres == 0
>
> П О Ч Е М У ?

Potomuchto :

1) COM biblioteka uzhe byla sinicializirovana, t.e. ona gde to kak to uzhe vyzyvalas' v etom potoke. Chtoby proverit' eto, mozhno prosto ignorirovat' resultat i prodolzhat' rabotu. Ili vyzovi CoUnitialize(), pered tem kak vyzovesh' CoInitialize().

2) Ne zabud' ukazat' linkovshuku biblioteku "ole32.lib". Xotya dumaju ty eto uzhe sdelal, inache byla by oshibka : external function error, ili chto to vrode etogo

3) hres == 0 - eto est' resul'tat S_OK, t.e. eto ne est' oshibka, eto est'USPEX
Zbazibo 21.11.01 01:01  
Автор: Паша Федорцов Статус: Незарегистрированный пользователь
<"чистая" ссылка>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach