2015-11-03 3 views
0

Я пытаюсь понять общий процесс, который Windows использует для открытия набора файлов с программой по умолчанию. Недавно я установил приложение, которое «заменило» приложение открытия по умолчанию для типа файла, и я пытаюсь выяснить, как был открыт файл ранее (я бы хотел использовать оба). Поэтому я вернулся к более ранней версии моего компьютера, на которой была установлена ​​оригинальная программа, и попробовал посмотреть в разделе «Программы по умолчанию», чтобы узнать, могу ли я найти способ просмотра того, что означает программа по умолчанию.Что происходит с Windows, чтобы открыть файл?

В моем понимании, файлы открываются путем вызова исполняемых «основных» программ (возможно, с некоторыми аргументами?) С открытием файла в качестве параметра. Но как именно вы находите путь исполняемого файла, который используется для запуска программы, и как вы определяете какие-либо специальные аргументы (если они есть), предоставленные ему?

Спасибо за ваше время,

ответ

1

Самый простой способ заключается в использовании assoc.exe и ftype.exe. Вот пример использования документа Word:

C:\>assoc .doc 
.doc=Word.Document.8 

C:\>ftype Word.Document.8 
Word.Document.8="C:\Program Files (x86)\Microsoft Office\Office15\WINWORD.EXE" /n "%1" /o "%u" 

Вы также можете посмотреть на реестр с помощью regedit.exe под HKEY_CLASSES_ROOT (ака HKCR). Начните с поиска записи для .doc, а затем посмотрите на значение (Default), которое дает вам Word.Document.8. Теперь посмотрите ниже: HKCR, чтобы найти Word.Document.8, а затем посмотрите записи под shell; (Default) дает вам действие по умолчанию, которое следует выполнить, когда файл дважды щелкнут в проводнике, а подразделы предоставляют вам конкретную используемую командную строку. Вы также можете просмотреть другие доступные действия, которые зарегистрированы (если есть); они появятся в контекстном меню, если пользователь щелкнет правой кнопкой мыши файл в проводнике.

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