ฉันจะตั้งค่าคุณสมบัติ 'เปิดด้วย ... ' เป็นอะไรเพื่อให้ระบบเรียกใช้ไฟล์. bat อีกครั้ง (เมื่อคลิกสองครั้ง)
อย่างใดเจ้านายของฉันโน้มน้าวเวิร์กสเตชันของเขาว่าตัวจัดการ.bat
ไฟล์ควรเป็น Word ตอนนี้เมื่อคลิกสองครั้งที่.bat
ไฟล์พวกเขาจะเปิดขึ้นใน Word
ฉันจะตั้งค่าคุณสมบัติ 'เปิดด้วย ... ' เป็นอะไรเพื่อให้ระบบเรียกใช้ไฟล์. bat อีกครั้ง (เมื่อคลิกสองครั้ง)
อย่างใดเจ้านายของฉันโน้มน้าวเวิร์กสเตชันของเขาว่าตัวจัดการ.bat
ไฟล์ควรเป็น Word ตอนนี้เมื่อคลิกสองครั้งที่.bat
ไฟล์พวกเขาจะเปิดขึ้นใน Word
คำตอบ:
ฉันคิดว่าคุณจะต้องลบการเชื่อมโยงไฟล์. bat ออกจากรีจิสทรี (โดยใช้โปรแกรม regedit)
ตามกระทู้ในฟอรัมนี้ใน LockerGnomeคุณต้องลบการตั้งค่ารีจิสทรีที่อยู่ใต้คีย์นี้:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat
คุณอาจต้องการสำรองข้อมูลรีจิสทรีก่อนทำเช่นนี้เพื่อความปลอดภัย
.bat
คีย์ทั้งหมดและสิ่งต่าง ๆ กลับมาเป็นปกติ ด้วยเหตุผลบางอย่าง (ฉันสงสัยว่ามีไวรัส) ฉันไม่สามารถเปลี่ยนชื่อUserChoice
คีย์ได้
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat
ฉันนำUserChoice
กุญแจออกอย่างสมบูรณ์ซึ่งทำงานได้ดีสำหรับฉัน @Kim - คุณอาจไม่ได้ทำงานregedt32
ในฐานะผู้ดูแลระบบ (คลิกขวาและเลือกRun as administrator
)?
ไฟล์รีจิสตรีคีย์นี้จะทำ คัดลอกและวางไปยังไฟล์ข้อความชื่อ "restore.reg" และดับเบิลคลิกเพื่อรวมเข้าในรีจิสทรี
มันจะล้างออกใด ๆ ต่อผู้ใช้ตั้งค่าที่คุณอาจได้สร้าง accidentlly สำหรับไฟล์ค้างคาวและการคืนค่าเริ่มต้นของระบบรวมทั้ง.bat
<-> ไฟล์สัมพันธ์ประเภทเช่นเดียวกับพารามิเตอร์ที่แท้จริงสำหรับการเปิดตัวbatfile
batfile
Windows Registry Editor Version 5.00
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat]
[-HKEY_CURRENT_USER\Software\Classes\.bat]
[-HKEY_CURRENT_USER\SOFTWARE\Classes\batfile]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat]
@="batfile"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile\shell\open\command]
@="\"%1\" %*"
explorer.exe
และเรียกใช้เป็นงานใหม่อีกครั้งโดยใช้ตัวจัดการงาน
ฉันมีปัญหาเดียวกัน (ใน Windows 7); ไฟล์แบตช์กำลังเปิดใน Notepad แทนที่จะถูกดำเนินการ
การแก้ไขรีจิสทรีด้านล่างสำหรับไฟล์. bat (ตามเครื่องอื่น ๆ ที่ใช้งาน) จะทำให้แบตช์ทำงานอย่างถูกต้อง:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\
.bat --> default-> Value not set
.bat/OpenWithList --> default-> Value not set
.bat/OpenWithProgIds--> default-> Value not set
batfile-> Zero length binary values
เก็บรายการเหล่านี้ แต่เอาคนอื่น ๆ .bat
ทั้งหมดอยู่ภายใต้ รีเฟรชและเรียกใช้ไฟล์แบตช์โดยดับเบิลคลิก - มันจะทำงานได้อย่างถูกต้อง
คำตอบข้างต้นไม่ได้แก้ไขสำหรับเครื่องที่ฉันทำงานด้วย แต่สิ่งที่แก้ไขมันคือการเริ่ม Admin เชลล์และทำงาน
assoc .bat=batfile
assoc .cmd=batfile
Run as Administrator
สิ่งนี้ทำงานได้อย่างสมบูรณ์แบบสำหรับฉันบนWindows 10 !! :-) ตอนนี้ (ติดตั้ง) ไฟล์. exe ที่เรียกไฟล์. bat ทำงานได้ตามที่คาดไว้ วิธีนี้ดีกว่าต้องยุ่งกับรีจิสทรี! ในฐานะที่เป็น sidenote เพื่อที่จะเห็นสิ่งที่สมาคมในปัจจุบันมีเพียงพิมพ์assoc .bat
ในกรณีของฉันทั้งสอง.bat
และcmd
ได้รับการNotepad++_file
เชื่อมโยงเป็น ตอนนี้.batfile
การคลิกขวาบนไฟล์ bat ทำให้ฉันสามารถ RUN หรือ Run as Administrator ก่อนหน้านี้มันเป็นไปไม่ได้ ก่อนหน้านี้การแก้ปัญหาของฉันคือการเปิดหน้าต่าง cmd จากนั้นพิมพ์ a filename.bat
เพื่อเรียกใช้ไฟล์ด้วยตนเอง
ข้อมูลในคำตอบนี้ทำให้ฉันวิธีการแก้คำถามของฉัน
ฉันเปิดคีย์รีจิสทรีที่กล่าวถึงที่นั่นและ
UserChoice
รหัสOpenWithList
คีย์คำตอบที่ได้รับ 40 โหวตโดย Kaleb ไม่ได้ผลสำหรับฉัน แต่ฉันสิ้นสุดการค้นหาคำตอบ ในการรับไฟล์ bat ให้ทำงานอีกครั้งคุณต้องไปที่:
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes.bat] และตั้งค่า (ค่าเริ่มต้น) เป็น "batfile" หากคุณมีสคริปต์แบตช์ที่เปิดใน Word หรือ Notepad ++ แทนที่จะเรียกใช้เมื่อดับเบิลคลิกนั่นเป็นเพราะโปรแกรมเหล่านั้นได้ตั้งค่า (ค่าเริ่มต้น) เป็น mimes ของตัวเอง
หากคุณต้องการการแก้ไขด่วนเพียงเปิดไฟล์ข้อความและวาง:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat]
@="batfile"
และบันทึกด้วยส่วนขยาย. reg และดับเบิลคลิกเพื่อรวม
ในรายการ regisrty คุณ. batจำเป็นต้องชี้ไปที่รายการbatfile :
[HKEY_CLASSES_ROOT\.bat]
@="batfile"
.....
โดยปกติคุณจะต้องแน่ใจว่าคุณมีรายการรีจิสทรีbatfile :
[HKEY_CLASSES_ROOT\batfile]
@="MS-DOS Batch File"
.....
ใน Windows 8 ใช้ Notepad เพื่อสร้างหรือแก้ไขไฟล์ Batch แต่ความลับมีดังต่อไปนี้:
บันทึกไฟล์แบตช์โดยใช้เครื่องหมายคำพูดคู่ ใช้ "MYBACK.BAT" อย่างแท้จริงโดยใช้เครื่องหมายคำพูดคู่ในกล่องบันทึกเพื่อบันทึกไฟล์ แทนที่จะเป็น MYBACK.BAT
เนื้อหาของรีจิสทรีแตกต่างกันไปตามรุ่นของ Windows
ผมขอแนะนำให้คุณพบว่าคอมพิวเตอร์เครื่องอื่นที่มี O เดียวกัน / รุ่น S และใช้ regedit ในการส่งออกเนื้อหาของและHKEY_CLASSES_ROOT\.bat
HKEY_CLASSES_ROOT\batfile
จากนั้นไปที่เครื่องของบอสลบสองปุ่มด้านบนและนำเข้าไฟล์ทั้งสอง
เพื่อหลีกเลี่ยงความยุ่งยาก (และสำหรับคนจำนวนมาก scariness และการข่มขู่) ของการแก้ไขรีจิสทรีคุณสามารถใช้ฟรีที่ยอดเยี่ยมและไม่รุกรานสาธารณูปโภคซ่อมแซมซึ่งอันที่จริงสำเร็จที่ดีใด ๆ (เทียบกับหลาย crapware อื่น ๆ ) tweaking.com Windows ซ่อม
โดยเฉพาะ: ติดตั้งข้ามไปที่แท็บ "ซ่อมแซม" คลิก "เปิดการซ่อมแซม" และใส่เครื่องหมายถูกใน "04 ลงทะเบียนระบบไฟล์" จากนั้นคลิกปุ่ม "เริ่มซ่อมแซม"
อินเทอร์เฟซผู้ใช้ของโปรแกรมนั้นเปลี่ยนแปลงไปตามเวลาดังนั้นในอนาคตใครก็ตามที่ทำสิ่งนี้อาจต้องสำรวจโปรแกรมเพื่อค้นหาตัวเลือกนี้
ฉันเดาว่ามีปัญหาอื่น ๆ อีกมากมายที่มีอยู่ในคอมพิวเตอร์ของคุณดังนั้นเขาอาจต้องการซ่อมแซมโปรแกรมทั้งหมดซึ่งอาจใช้เวลาเป็นชั่วโมง
หมายเหตุ: ฉันไม่ได้มีส่วนเกี่ยวข้องกับ tweaking.com ฉันแค่เป็นแฟนตัวยงของรายการ การใช้งานอย่างมีฝีมือนั้นได้บันทึกระบบปฏิบัติการของคอมพิวเตอร์ของฉันหรือแก้ไขปัญหาปากแข็งหลายครั้ง
อีกครั้งไม่มีคำตอบก่อนหน้านี้ที่นี่
ผมยกตัวอย่างเช่นมีการเปลี่ยนค่าเริ่มต้นของ[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile\shell]
จากไปedit
open
(เมื่อฉันเปลี่ยนประเภทไฟล์ที่ขยายความสัมพันธ์ในกล่องโต้ตอบตัวเลือกโฟลเดอร์ Explorer ไฟล์ BAT เคย & ไม่ได้เสนอให้มีการเปลี่ยนแปลงดูเหมือนว่าจะมีข้อยกเว้นพิเศษ แต่ฉันจำได้เมื่อฉันเพิ่มประเภท BAT ในกล่องโต้ตอบตัวเลือกโฟลเดอร์ Explorer เพื่อให้ 'แก้ไข' เป็นคำกริยาเชลล์เริ่มต้น)
ดังนั้นหลังจากทั้งหมดมีเหตุผลที่แตกต่างกันและเวอร์ชั่นของ OS ที่แตกต่างกันและ (อย่างน้อย) ค่า (ค่าเริ่มต้น) ของโฟลเดอร์รีจิสตรีต่อไปนี้ (และโฟลเดอร์ย่อย) จะต้องได้รับการตรวจสอบโดยใช้สามัญสำนึกบางประการ :-) และฉันคิดว่ารายการอาจสะท้อนถึงลำดับความสำคัญที่เกี่ยวข้องกับระบบปฏิบัติการ:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat] (if present: remove "UserChoice")
[HKEY_CURRENT_USER\Software\Classes\.bat] (if present: @ = "batfile")
[HKEY_CURRENT_USER\SOFTWARE\Classes\batfile] (if present)
[HKEY_CURRENT_USER\SOFTWARE\Classes\batfile\shell] (if present: @ = "open")
[HKEY_CURRENT_USER\SOFTWARE\Classes\batfile\shell\open\command] (if present: @ = "\"%1\" %*")
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat] @ = "batfile"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile]
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile\shell] @ = "open"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile\shell\open\command] @ = "\"%1\" %*"
[HKEY_CLASSES_ROOT\.bat] @ = "batfile"
[HKEY_CLASSES_ROOT\batfile]
[HKEY_CLASSES_ROOT\batfile\shell] @ = "open"
[HKEY_CLASSES_ROOT\batfile\shell\open\command] @ = "\"%1\" %*"