Здравствуйте, ecspertiza, Вы писали:
E>при вызове Inicialize периодически explorer валиться на строчке
E>if ( FAILED( pDataObj->GetData ( &fmt, &stg ))) // <---- Вот тут
E>{
E> return E_INVALIDARG;
E>}
Предположу, что в pDataObj иногда может быть NULL. Это надо проверять.
E>Еще интересует такой вопрос, после вызова Inicialize моя дллка будет заблокирована эксплорером, а если мне ее к примеру нужно переписать, или еще что, можно ли ее как то разлочить после выполнения нужной команды ?
Выполнить дерегистрацию COM-расширения, потом перезапустить explorer.
Например, Windows Installer во время удаления всяких shell extensions именно так и поступает, а
на Vista и выше для этого есть Restart Manager —
http://msdn.microsoft.com/en-us/library/windows/desktop/cc948910(v=vs.85).aspx