Як встановити програму за замовчуванням для відкриття файлів без розширення в Windows?


117

Як встановити програму за замовчуванням для відкриття файлів без розширення в Windows?


Прийнята відповідь спрацювала, але в той же час змусила інші функції припинити роботу; Оберіть Програма за замовчуванням не працює (зламана) у Windows
Piotr Dobrogost

Яка функція перестала працювати?
Даніель

Відповіді:


148

За допомогою командного рядка:

assoc .="No Extension"
ftype "No Extension"="C:\path\to\my editor.exe" "%1"

Щоб дати кредит, я дізнався про це з vim wikia тут і тут

Додаткова інформація:

Замість цього "C:\path\to\..."можуть бути корисні наступні макроси:

  • %SystemDrive% - вікна накопичувача встановлені на, тобто C:\
  • %ProgramFiles% - напр "C:\Program Files\"
  • %ProgramFiles(x86)% - напр "C:\Program Files (x86)\"

Вам потрібно буде належним чином уникнути їх:

ftype "No Extension"=^"^%ProgramFiles(x86)^%\Notepad++\notepad++.exe^" "%1"

Щоб ікона була такою ж, як і .txt файли (я цього не робив, оскільки автоматично іконки файлів відображалися як файли Notepad ++):

assoc "No Extension"\DefaultIcon=%SystemRoot%\System32\imageres.dll,-102

Щоб скасувати, ви можете прочитати інформацію assoc /?або ftype /?інформацію, наприклад:

ftype "No Extension"=
assoc "No Extension"\DefaultIcon=
assoc .=

4
Зауважте, що якщо ваш редактор знаходиться в папці, яка містить пробіл (наприклад, "C: \ Program Files"), вам потрібно ввести його в лапки. ftype no_ext="C:\Program Files (x86)\Notepad++\notepad++.exe" "%1"
GuiSim

10
FWIW, у програмі Win7 вам потрібно cmd
зайнятися

1
Добре, ще один: у наведеному вище прикладі - no_extце те, що Windows Explorer відображатиме у стовпці "Тип" для таких файлів. Я думаю, що краще читати опис було б краще, тому я використовував "No extension", включаючи подвійні лапки, замість no_extвищезазначених команд.
Крісті Діаконеску

3
Ось як я встановив піктограму для .txt-файлів для файлів без розширення (спасибі @grawity за вказівник та ідею): assoc "No extension"\DefaultIcon=%SystemRoot%\system32\imageres.dll,-102
Крісті Діаконеску

2
Це не працює для мене в Windows 10. Деякі зауваження: 1) Це не знайдеться assocв PowerShell, тому cmdпотрібно. 2) Це була помилка, коли вона не працювала як адміністратор, тому я побіг як адміністратор. Команда працює без помилки, але, здається, нічого не зробила. Я перезавантажився і після цього.
JamesFaix

24

З Windows IT pro :

Звичайні файли з розширенням можуть мати пов'язану програму, однак це не так з файлами, які не мають розширення. Якщо ви двічі клацніть по одній і виберіть програму і встановіть прапорець, щоб завжди використовувати цю програму, вона ігнорується, і кожен раз, коли ви вибираєте файл, ви повинні вибрати програму.

Ви можете застосувати це за допомогою реєстру:

  • Запустіть редактор реєстру (regedit.exe)
  • Перемістіться до HKEY_CLASSES_ROOT
  • У меню Правка виберіть Нове - Клавіша
  • Введіть назву "." і натисніть Enter (не вводите лапки)
  • Виберіть нове "." ключ
  • Двічі клацніть значення (за замовчуванням)
  • Змініть HKEY_CLASSES_ROOT, що використовується для відкриття, наприклад NOTEPAD для програми notepad.exe NOTEPAD
  • Натисніть кнопку ОК

alt текст

Якщо ви двічі клацніть на файлі без розширення, він відкриється із вибраною програмою.

Щоб перевірити, що застосовується наявна програма, подивіться на запис під HKEY_CLASSES_ROOT, наприклад HKEY_CLASSES_ROOT.doc використовує Word.Document.8, тож якщо ви хотіли цього як свого редактора за замовчуванням, ви змінили HKEY_CLASSES_ROOT. (За замовчуванням) на Word.Document.8.

Будь-який метод, який дозволяє уникнути необхідності редагування реєстру, полягає в наступному:

  • Відкрити Провідник - Перегляд - Параметри папок ... - Типи файлів - Новий тип:
  • Опис типу: Текст (будь-який опис, який ви можете ввести)
  • Пов'язане розширення:. (лише період)
  • Дії: - нові ...
  • Дія: відкрито
  • Додаток, що використовується для виконання дій: c: \ winnt \ notepad.exe
  • Клацніть ОК, потім знову добре

Щось не так з вищезазначеною інформацією. У мене .xml файли встановлено, щоб відкритись із записом Notepad ++, але (за замовчуванням) для .xml встановлено xmlfile ...
Piotr

Я не дуже розумію, що ви маєте на увазі, але боюся, що я не знав би і рішення ...
Іво Фліпс

3
@Piotr: Якщо запис за замовчуванням HKCR\.xmlє xmlfile, це означає, що оболонці (Explorer) потрібно перейти HKCR\xmlfileі прочитати інформацію з цього ключа.
grawity

@ Ivo Коли я заглядаю у .txt запис у реєстрі, щоб перевірити, як це виглядає (у мене .txt файли, відкриті Notepad ++), за замовчуванням має значення "txtfile". Нічого в цьому ключі реєстру не залишилося жодного сліду Notepad ++. Що я пропускаю?
Пьотр Доброгост

Ви маєте на увазі, що зараз він не використовує Notepad ++? Оскільки ви можете мати змогу встановити його як NotePad, якщо знаєте розширення або створити його самостійно
Ivo Flipse

14

Це приклад файлу .reg для отримання Блокноту для відкриття невідомих розширень файлів. Створіть новий текстовий файл із розширенням .reg, виріжте та вставте його до нього, а потім двічі клацніть для запуску, і він додасть його до реєстру.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Unknown\shell]
@="notepad"

[HKEY_CLASSES_ROOT\Unknown\shell\notepad]
@="Open with Notepad"

[HKEY_CLASSES_ROOT\Unknown\shell\notepad\command]
@="C:\\WINDOWS\\NOTEPAD.EXE %1"

З вищезазначеною інформацією щось не так. Коли я натискаю новостворений .reg файл, я отримую помилку "Вказаний файл не є скриптом реєстру".
Пьотр Доброгост

Вибачте Пьотр, спробуйте зараз, я додав ще один рядок до вершини.
Pauk

Це працює в Провіднику, але не працює в програмі Total Commander, який у цьому відношенні повинен поводитися (і завжди) ідентично Explorer. Будь-які думки?
Пьотр Доброгост,

Ідея, що вам слід встановити асоціації файлів для ВСІХ невідомих файлів у Windows, є божевільною. Молодці, пане!
Стівен Пенні

перевірено в win7, працює. тому немає потреби в окремому ключі ./
jiggunjer

5

Більшість цих рішень не працювали для мене в Windows 8.1. У мене це працює, зробивши наступне (це має працювати і для Windows 7, і для Windows 10):

  1. Дотримуйтесь рішення hasnj: спочатку відкрийте підняте вікно команди та введіть

    assoc .="No Extension"
    ftype "No Extension"="C:\path\to\my editor.exe" "%1"
    
  2. Відкрийте regedit та перейдіть до

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.
    

    Клацніть правою кнопкою миші та додайте новий ключ, який називається, UserChoiceякщо він ще не існує.

  3. У новій клавіші UserChoice клацніть правою кнопкою миші та створіть нове значення String з назвою Progid. Встановіть його значення на "Без розширення" (без подвійних лапок).


На жаль, це не працює для мене в Windows 8.1. Я спробував вбити і перезапустити explorer.exe після цього - чи потрібно ще щось зробити? У записі HCU ви згадали тепер у мене є OpenWithList, OpenWithProgidsі один я додав UserChoice.
Конан

1
Можлива ключова помилка в статті 3. No Extention повинна бути No Extension?
JosefZ

2

Відповідь Паука не спрацювала для мене, мені довелося скористатися:

Версія редактора реєстру Windows 5.00

[HKEY_CLASSES_ROOT.] @ = "Немає розширення"

[HKEY_CLASSES_ROOT \ Без розширення]

[HKEY_CLASSES_ROOT \ Без розширення \ оболонки]

[HKEY_CLASSES_ROOT \ Без розширення \ Shell \ Open]

[HKEY_CLASSES_ROOT \ Без розширення \ Shell \ Open \ Command] @ = "C: \\ pathtoexe \\ yourexe.exe% 1"

Зверніть увагу на подвійні риски на шляху до EXE.


Це той, який працював на мене. Ключовими були подвійні нахили.
ontherocks

1

Ви також можете використовувати NirSoft FileTypesManager :

FileTypesMan - це альтернатива вкладці "Типи файлів" у "Параметри папки" Windows.

FileTypesMan також дозволяє легко редагувати властивості та прапори кожного типу файлів, а також дозволяє додавати, редагувати та видаляти дії типу файлу.


1

Інші відповіді трохи застаріли. Ось посилання на те, що працює для Windows 7:

Розширення оболонки для імен файлів без розширення файлів

Розширення оболонки для імен файлів без розширення файлів можуть бути зареєстровані в наступному:

[HKEY_CLASSES_ROOT\.]
           For example, to associate a program (for example, Notepad.exe) to open all files with no extension, use the following registry keys:

[HKEY_CLASSES_ROOT\.]
@=""

[HKEY_CLASSES_ROOT\.\shell]

[HKEY_CLASSES_ROOT\.\shell\open]

[HKEY_CLASSES_ROOT\.\shell\open\command]
@="<path to notepad.exe> %1"
           Here is an alternative method:

[HKEY_CLASSES_ROOT\.]
@="NoExtFile"

[HKEY_CLASSES_ROOT\NoExtFile]

[HKEY_CLASSES_ROOT\NoExtFile\shell]

[HKEY_CLASSES_ROOT\NoExtFile\shell\open]

[HKEY_CLASSES_ROOT\NoExtFile\shell\open\command]
@="<path to notepad.exe> %1"

Будь ласка, надалі включіть найбільш релевантні частини тут, на сайті, а не просто надайте посилання. Дякую.
slhck

1

Не можу повірити, що ще ніхто цього не сказав. Вам не потрібно вказувати шлях до свого текстового редактора, як говорить прийнята відповідь.

Просто запустіть у командному рядку адміністратора наступне:

assoc .=txtfile

0

У мене проблема з відкриттям PDF-файлів в IE9, так IE9 (потрібна для старої програми). Файли PDF генеруються за допомогою Javascript і повертаються назад у браузер як тип вмісту програми / pdf , що добре, але назва файлу "немає" , що погано. IE8 дозволяє вибрати Зберегти, Скасувати та Відкрити і розуміє MimeType . чомусь IE9 цього не робить. Тож вам потрібно кожного разу вибирати, щоб відкрити його за допомогою читача PDF.

Моє рішення: використовуючи цю публікацію, я створив файлову асоціацію для файлу без розширення. спершу я відобразив його на Acrobat Reader , який працює чудово, але обмежує можливості відкриття файлу без розширення. Отже, я вибрав Internet Explorer своїм переглядачем за замовчуванням для файлів без розширення. Таким чином, якщо IE може відкрити його або знає плагін або іншу асоціацію, він буде працювати.

Я перевірив це з файлами "none1" і "none2" на робочому столі. "none1" - це текстовий файл, який говорить "привіт, світ". "none2" - це файл у форматі PDF.


Ось мій файл .reg :

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.]
@="htmlfile"

[HKEY_CLASSES_ROOT\.\PersistentHandler]
@="{eec97550-47a9-11cf-b952-00aa0051fe20}"

- Див. Скріншот

http://postimg.org/image/xtklrzcoz/

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.