Форум: "Основная";
Текущий архив: 2006.04.09;
Скачать: [xml.tar.bz2];
ВнизОткрыть документ MS Office Найти похожие ветки
← →
JJ © (2006-03-02 18:56) [0]Здравствуйте! Есть файлы с произвольным расширением. Файлы формата Word или Excel. Как открыть эти файлы соответствующей программой?
← →
Virgo_Style © (2006-03-02 19:24) [1]ShellExecute
← →
JJ © (2006-03-02 19:58) [2]Проблема в том, например, имя word`овского или excel`евского файла есть oooddmml.NNN, где NNN - любое численное значение, а ShellExecute запускает ассоциированную по расширению программу. Как сделать что-то типа ссылки "Открыть документ Office" в меню пуск-программы, только с передачей имени файла?
← →
Virgo_Style © (2006-03-02 20:31) [3]JJ © (02.03.06 19:58) [2]
ассоциированную по расширению программу
или указанную с указанным же параметром
← →
JJ © (2006-03-03 09:56) [4]Да, а как определить word`овский это файл или excel`евский?
← →
JJ © (2006-03-03 10:43) [5]Суть такая. В каталог сетевого диска приходять разные отчеты, которые могут быть вордом, экселем или архивным файлом. Имена файлов произвольные, т.е. по расширению не определишь формат файла. Необходимо написать плагин к фару, который открывал бы эти файлы или запускал соответствующее приложение. Архивные файлы фаром распознаються и с ними проблем нет. Офисные файлы (как ворд так и эксель) имеют общую сигнатуру - первые 4 байта. Различия, по которым можно определить формат файла, наблюдаються в конце. Т.е. для просмотра этого файла фар открывает его, читает первые 128 байт и передает их по списку файловых плагинов. Мой плагин определяет по сигнатуре офисный это файл или нет, и потом открывает его, переходит в конец файла для уточнения формата. Затем запускает соответствуещее приложение, которое перетягивает файл по сети и открывает его. При этом диск сетевой и к нему могут обращаться много пользователей.
Можно ли определив по сигнатуре файл передать его для открытия офисному пакету не зная ворд это или эксель?
← →
Сергей М. © (2006-03-03 11:21) [6]Можно.
Но не по сигнатуре, а открыв файл документа как structured storage.
Класс корневого стореджа укажет принадлежность документа.
← →
JJ © (2006-03-03 13:32) [7]А можно подробнее?
← →
Сергей М. © (2006-03-03 13:38) [8]http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stg/stg/extracting_the_code_samples.asp
← →
Экспериментатор (2006-03-03 21:23) [9]
> Можно ли определив по сигнатуре файл передать его для открытия
> офисному пакету не зная ворд это или эксель?
А сильно ли так важно различать Word это или Excel/
Или может добавить все таки опознавательный символ в имя файла
(для различения формата)
А потом использовать ShellExecute
Как вариант можно написать расширение Explorer"a
использовав IContextMenu
Добавить два пункта в меню
"Открыть как документ Microsoft Word"
"Открыть как документ Microsoft Excel"
Могу в принципе помочь в таком варианте
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.04.09;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.013 c