วิธีการตั้งค่าโปรแกรมเริ่มต้นสำหรับการเปิดไฟล์ที่ไม่มีนามสกุลใน Windows


117

วิธีการตั้งค่าโปรแกรมเริ่มต้นสำหรับการเปิดไฟล์ที่ไม่มีนามสกุลใน Windows


คำตอบที่ได้รับการยอมรับทำงานได้ แต่ในเวลาเดียวกันทำให้คุณสมบัติอื่นหยุดทำงาน เลือกโปรแกรมเริ่มต้นไม่ทำงาน (ใช้งานไม่ได้) บน Windows
Piotr Dobrogost

ฟีเจอร์ใดหยุดทำงาน
Danijel

คำตอบ:


148

ด้วยบรรทัดคำสั่ง:

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

เพื่อให้เครดิตฉันเรียนรู้สิ่งนี้จากกลุ่มวิกิที่นี่และที่นี่

ข้อมูลเสริม:

แทนที่จะ"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ในฐานะผู้ดูแลระบบ
Cristi Diaconescu

1
ตกลงอีกหนึ่งตัวอย่างในตัวอย่างข้างต้นno_extคือสิ่งที่ Windows Explorer จะแสดงในคอลัมน์ 'ประเภท' สำหรับไฟล์ดังกล่าว ฉันคิดว่าคำอธิบายที่อ่านง่ายขึ้นน่าจะดีกว่าดังนั้นฉันจึงใช้"No extension"รวมถึงเครื่องหมายคำพูดคู่แทนno_extคำสั่งด้านบน
Cristi Diaconescu

3
นี่คือวิธีที่ฉันตั้งไอคอนสำหรับไฟล์. txt สำหรับไฟล์ที่ไม่มีส่วนขยาย (ขอบคุณ @ grawity สำหรับตัวชี้และไอเดีย): assoc "No extension"\DefaultIcon=%SystemRoot%\system32\imageres.dll,-102
Cristi Diaconescu

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
  • คลิกตกลง

ข้อความแสดงแทน

หากคุณดับเบิลคลิกไฟล์ที่ไม่มีนามสกุลไฟล์นั้นจะเปิดขึ้นมาพร้อมกับแอพพลิเคชั่นที่เลือก

เพื่อตรวจสอบสิ่งที่แอปพลิเคชันที่มีอยู่ที่ใช้ดูที่รายการภายใต้ HKEY_CLASSES_ROOT เช่น HKEY_CLASSES_ROOT.doc ใช้ Word.Document.8 ดังนั้นหากคุณต้องการสิ่งนี้เป็นตัวแก้ไขเริ่มต้นคุณจะเปลี่ยน HKEY_CLASSES_ROOT (ค่าเริ่มต้น) เป็น Word.Document.8

วิธีการใด ๆ ที่หลีกเลี่ยงความต้องการแก้ไขรีจิสทรีมีดังนี้:

  • เปิด Explorer - ดู - ตัวเลือกโฟลเดอร์ ... - ประเภทไฟล์ - ประเภทใหม่:
  • คำอธิบายของประเภท: ข้อความ (คำอธิบายใด ๆ คุณสามารถพิมพ์)
  • ส่วนขยายที่เกี่ยวข้อง:. (แค่ช่วงเวลา)
  • การกระทำ: - ใหม่ ...
  • การดำเนินการ: เปิด
  • แอปพลิเคชันที่ใช้ในการดำเนินการ: c: \ winnt \ notepad.exe
  • คลิกตกลงจากนั้นตกลงอีกครั้ง

มีบางอย่างผิดปกติกับข้อมูลข้างต้น ฉันมีไฟล์. xml ตั้งค่าให้เปิดด้วย Notepad ++ แต่รายการ (ค่าเริ่มต้น) สำหรับ. xml ถูกกำหนดเป็น xmlfile ...
Piotr Dobrogost

ผมไม่เข้าใจจริงๆว่าคุณหมายถึง แต่ฉันกลัวว่าฉันจะไม่ทราบว่าวิธีการแก้ปัญหาทั้ง ...
Ivo Flipse

3
@Piotr: ถ้ารายการเริ่มต้นของHKCR\.xmlมีxmlfileก็หมายความเปลือก (Explorer) ต้องไปHKCR\xmlfileและอ่านข้อมูลจากที่สำคัญ
grawity

@Ivo เมื่อฉันดูรายการ. txt ในรีจิสตรีเพื่อตรวจสอบว่ามีลักษณะอย่างไร (ฉันมีไฟล์. txt ที่เปิดโดย Notepad ++) รายการเริ่มต้นมีค่า "txtfile" ไม่มีร่องรอยของ Notepad ++ ในคีย์รีจิสทรีนี้ ฉันพลาดอะไรไป
Piotr Dobrogost

คุณหมายความว่าไม่ได้ใช้ 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 ที่สร้างขึ้นใหม่ฉันได้รับข้อผิดพลาด "ไฟล์ที่ระบุไม่ใช่สคริปต์รีจิสตรี"
Piotr Dobrogost

ขออภัย Piotr ลองตอนนี้ฉันได้เพิ่มอีกบรรทัดไว้ด้านบนสุดแล้ว
Pauk

สิ่งนี้ใช้งานได้ใน Explorer แต่ไม่สามารถใช้งานได้ใน Total Commander ซึ่งควรปฏิบัติตน (และมีเสมอ) เหมือนกับ Explorer ในเรื่องนี้ ความคิดใด ๆ
Piotr Dobrogost

แนวคิดที่ว่าคุณควรจะต้องตั้งค่าความสัมพันธ์ของไฟล์สำหรับไฟล์ที่ไม่รู้จักทุกไฟล์ใน Windows นั้นไม่สมบูรณ์ ทำได้ดีมาก!
Steven Penny

ตรวจสอบใน 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. ในคีย์ผู้ใช้ชื่นชอบใหม่คลิกที่เหมาะสมและสร้างใหม่ String ValueProgidที่เรียกว่า ตั้งค่าเป็น "No Extension" (ไม่มีเครื่องหมายคำพูดคู่)


นี่มันใช้งานไม่ได้กับฉันบน Windows 8.1 ฉันพยายามฆ่าและรีสตาร์ท explorer.exe ในภายหลัง - มีอย่างอื่นที่ฉันต้องทำอีกหรือไม่ ในรายการ HCU ที่คุณกล่าวถึงตอนนี้ผมมีOpenWithList, และหนึ่งฉันเพิ่มOpenWithProgids UserChoice
โคนัน

1
ข้อผิดพลาดที่สำคัญที่เป็นไปได้ในบทความ3 No Extentionควรเป็นNo Extensionอย่างไร
JosefZ

2

คำตอบของ Pauk ไม่ได้ผลสำหรับฉันฉันต้องใช้แทน:

Windows Registry Editor เวอร์ชัน 5.00

[HKEY_CLASSES_ROOT.] @ = "ไม่มีส่วนขยาย"

[HKEY_CLASSES_ROOT \ ไม่มีส่วนขยาย]

[HKEY_CLASSES_ROOT \ No Extension \ Shell]

[HKEY_CLASSES_ROOT \ ไม่มีส่วนขยาย \ Shell \ Open]

[HKEY_CLASSES_ROOT \ No ส่วนขยาย \ Shell \ Open \ Command] @ = "C: \\ pathtoexe \\ yourexe.exe% 1"

หมายเหตุแบ็กสแลชคู่บนเส้นทาง exe


นี่คือสิ่งที่เหมาะกับฉัน รหัสคือแบ็กสแลชสองชั้น
ontherocks

1

คุณยังสามารถใช้ NirSoft FileTypesManager :

FileTypesMan เป็นอีกทางเลือกหนึ่งของแท็บ 'ประเภทไฟล์' ใน 'ตัวเลือกโฟลเดอร์' ของ Windows

FileTypesMan ยังช่วยให้คุณสามารถแก้ไขคุณสมบัติและแฟล็กของแต่ละประเภทไฟล์ได้อย่างง่ายดายรวมถึงอนุญาตให้คุณเพิ่มแก้ไขและลบการดำเนินการในประเภทไฟล์


1

คำตอบอื่น ๆ จะล้าสมัยไปเล็กน้อย นี่คือลิงค์ไปยังลิงค์ที่ใช้ได้กับ Windows 7:

Shell Extensions สำหรับชื่อไฟล์ที่ไม่มีนามสกุลไฟล์

นามสกุลของเชลล์สำหรับชื่อไฟล์ที่ไม่มีนามสกุลไฟล์สามารถลงทะเบียนได้ภายใต้รายการต่อไปนี้:

[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ซึ่งดี แต่ชื่อไฟล์"none"ซึ่งไม่ดี IE8ช่วยให้คุณสามารถเลือกเก็บบันทึกยกเลิกและเปิดและเข้าใจMimeType ด้วยเหตุผลบางอย่างIE9ทำไม่ได้ ดังนั้นคุณต้องเลือกทุกครั้งที่เปิดด้วยโปรแกรมอ่าน PDF

โซลูชันของฉัน: การใช้โพสต์นี้ฉันได้สร้างการเชื่อมโยงไฟล์สำหรับไฟล์โดยไม่มีนามสกุล ก่อนอื่นฉันแม็พกับAcrobat Readerซึ่งทำงานได้ดี แต่จำกัดความเป็นไปได้สำหรับการเปิดไฟล์โดยไม่มีนามสกุล ดังนั้นฉันเลือกInternet Explorerเป็นเครื่องมือดูค่าเริ่มต้นสำหรับไฟล์ที่ไม่มีนามสกุล ด้วยวิธีนี้หาก IE สามารถเปิดหรือรู้ปลั๊กอินหรือการเชื่อมโยงอื่น ๆ ก็จะทำงาน

ฉันทดสอบสิ่งนี้ด้วยไฟล์ "none1" และ "none2" บนเดสก์ท็อปของฉัน "none1" เป็นไฟล์ข้อความที่ระบุว่า "hello world" "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/

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.