Отображение файлов в IE с использованием асинхронного подключаемого протокола

Я создал асинхронный подключаемый протокол для Internet Explorer:

ex://D:/sample.html (предположим, что "ex" - это протокол, созданный мной)

открывает файл D:/sample.html в самом IE

Ниже приведены проблемы:

  1. Он способен отображать файлы html и jpeg (не проверял другие форматы файлов изображений). Но выдает ошибку "Переход на веб-страницу был отменен" для других форматов файлов, таких как .doc, .pdf, .swf и т.д. Судя по логам, где я записываю этапы обработки, вся обработка проходит аналогично для эти форматы файлов, как в случае html и т. д.

  2. После того, как мы открываем файл в IE, файл открывается в IE с использованием приложения по умолчанию, зарегистрированного для формата файла в системе. Например: файл PDF открывается в Adobe Reader в системах, где Adobe Reader является приложением по умолчанию, зарегистрированным для формата файла PDF. Итак, есть ли способ программно управлять элементами пользовательского интерфейса (такими как сохранение, печать и т. д.) этого приложения по умолчанию во время отображения документа.

Любые указатели будут полезны. Спасибо.


person Shikha    schedule 29.12.2011    source источник


Ответы (1)


Взгляните на мой тестовый протокол: (tp://) на codeplex. Он обрабатывает различные типы, сообщая тип MIME.

person Yuriy Gettya    schedule 22.03.2012
comment
Проблема в том, что когда я извлекаю данные из файла в своем обработчике протокола, и IE читает их, IE может правильно их отображать. Но когда я манипулирую данными, а IE читает обработанные данные, IE не может правильно их отобразить. Обработанные данные хранятся в формате массива двоичных байтов. Мне кажется, это проблема с кодировкой, но я не уверен, что делать. (Файлы включают файлы ppt, pdf, docx и т. д.) - person Shikha; 13.04.2012
comment
Попробуйте удалить флаг USE_IE_ENCODING из BindInfo. Это фактически указывает IE не сжимать данные. - person Yuriy Gettya; 04.05.2012