0

Я просто попробовать образец приложения Windows, для рецепта недвижимости Handler, который доступен here и я изменил его использовать на .doc файлов вместо .recipe файлов:Поддерживает ли оболочка Windows несколько обработчиков свойств оболочки?

const WCHAR c_szRecipeFileExtension[] = L".doc"; 

Но это, казалось, перезаписать предыдущее Свойства обработчика Office с самим собой, что вызывает вопрос, поддерживает ли оболочка Windows несколько обработчиков свойств оболочки, или вы можете использовать только один за один раз для данного типа файла? Если это возможно, что мне не хватает из кода или логики в выборке?

Я не нашел конкретного ответа на MSDN для этого вопроса.

ответ

1

No.

Но есть вариант, который вы можете использовать (я не люблю его, но я не вижу каких-либо дополнительных варианта). Сохраните предыдущий обработчик свойств CLSID, когда вы зарегистрируете свой собственный. И когда оболочка запрашивает свойство, которое вы не можете обработать, просто создайте экземпляр предыдущего обработчика и передайте запрос им.

CoCreateInstance(SavedCLSID, nil, CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER, IPropertyStore, PS) 
PS.QueryInterface(IInitializeWithStream, IWS) 
IWS.Initialize(Stream, Mode) 
PS.GetValue(AUnknownKey) 

 Смежные вопросы

  • Нет связанных вопросов^_^