Hộp thoại mở với hộp thoại bỏ qua lựa chọn của tôi


41

Tôi đang chạy Windows 7 x64. Tôi có một loại tệp mà tôi muốn liên kết với Microsoft Access 2003.

Tôi nhấp chuột phải vào tệp và chọn Mở bằng-> Chọn Chương trình mặc định. Trong hộp thoại "Mở bằng", tôi chọn nút duyệt. Tôi chọn Tệp chương trình (x86) \ Microsoft Office \ Office11 \ msaccess.exe và nhấn "Mở".

Tôi kết thúc trở lại tại hộp thoại "Mở bằng", nhưng không có gì thay đổi. Truy cập không được liệt kê như một chương trình để sử dụng để mở tệp với. Chương trình gốc (Adobe Acrobat) được liên kết với chương trình này vẫn được chọn.

Bất kỳ lời khuyên về việc làm cho hiệp hội này để làm việc?


4
Vâng, đây là một lỗi kỳ lạ đã làm tôi khó chịu trong một thời gian dài và một số phiên bản Windows. Nó chỉ xảy ra không liên tục vì vậy tôi đã không theo dõi những gì thực thi / kích hoạt hành vi này, do đó tôi không thể tìm thấy bất kỳ loại điểm chung duy nhất nào giữa chúng.
Synetech


nó xảy ra bởi vì các cửa sổ chỉ sử dụng tên thực thi, không phải là đường dẫn đầy đủ, khi lưu trữ các hiệp hội. Một lời giải thích và giải pháp đầy đủ: superuser.com/a/886139/425338
diego nunes

Câu trả lời:


49

Nguyên nhân rất có thể là một sự cố trong sổ đăng ký mà không rõ nguyên nhân.

Đảm bảo giá trị khóa ở vị trí sau chứa đường dẫn chính xác:

HKEY_CLASSES_ROOT\Applications\YOURFILE.EXE\shell\open\command

Tìm kiếm tên ứng dụng và phần mở rộng tệp trong sổ đăng ký để xem các mục khác có thể bị hỏng không.


4
Đây chính xác là vấn đề đối với tôi .. một khi tôi thay đổi giá trị tại vị trí chính xác đó, nó hoạt động tốt ngay khi tôi cố duyệt -> mở lại
abelito

Khi giá trị khóa không trỏ đến đúng vị trí của ứng dụng, hãy thay đổi nó như được chỉ ra trong một câu trả lời khác tại đây
sancho.s Tái lập lại

2
CÁi này đã sửa nó giúp tôi. Vấn đề là tôi đã nâng cấp nó từ 32 bit lên 64 bit, vì vậy nó đang tìm kiếm Program Files (x86)thay vìProgram Files
endolith

2
Sửa đường dẫn đến ứng dụng trong khóa đăng ký này đã sửa nó. Nó xuất hiện khi tôi gỡ cài đặt ứng dụng và sau đó cài đặt lại với một đường dẫn khác, khóa đăng ký này không được cập nhật. Nó dường như là một lỗi Win7 mà nếu mục nhập cho ứng dụng tồn tại, các cửa sổ thoát khỏi quá trình lựa chọn ứng dụng mà không sửa đổi mục đăng ký; ngay cả khi đường dẫn bạn chọn không khớp với giá trị hiện tại của mục đăng ký. Việc ngăn người dùng thay đổi đường dẫn đến một ứng dụng hiện có bằng GUI "Mở bằng".
chetto

3
Xin chúc mừng MS .... 6 năm rưỡi xuống dòng và chúng tôi vẫn đang làm điều này.
ZaLiTHkA

14

Đó là một vấn đề rất đơn giản, thực sự. Điều này xảy ra bởi vì Windows sử dụng các liên kết chỉ dựa trên tên thực thi cơ sở của chương trình .

Bất cứ khi nào bạn liên kết một chương trình với một phần mở rộng, chương trình sẽ có mặt trong HKEY_CLASSES_ROOT\Applicationsdanh sách, trong đó các tên chính là tên cơ sở của các tệp thực thi (ví dụ, MSACCESS.EXEAcroRD32.exe). Bạn không thể liên kết chương trình khác với phần mở rộng tệp nếu nó có cùng tên thực thi . Điều đã xảy ra là bạn có thể đã chuyển phần mềm sang một vị trí khác (bạn có thể thấy phần lớn xảy ra với các phiên bản phần mềm di động) và khi bạn cố gắng trỏ đến nó, Windows sẽ thấy rằng tên đã được đăng ký và thay vào đó sẽ cố gắng sử dụng đã đăng ký con đường. Khi không thể tìm thấy điều đó, nó sẽ âm thầm bỏ qua lỗi và trình bày lại hộp thoại mà không có thay đổi gì.

Giải pháp cũng đơn giản không kém: chỉ cần sửa hoặc xóa khóa và thử lại. Nó sẽ làm việc.HKCR\Applications\YourAppName.exe


Nó cũng xảy ra khi bạn cài đặt nhiều phiên bản Adobe Photoshop (thông qua Creative Cloud), tất cả đều sử dụng cùng một tên thực thi.
Phrogz

Đó là nó! Rất ngu ngốc, họ nên lưu trữ đường dẫn hoặc băm là tốt.
Philipp F

11

Khóa đăng ký hiển thị ở trên là vấn đề của tôi.

HKEY_CLASSES_ROOT\Applications\MSACCESS.EXE\shell\open\command

Nên đọc:

"C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE" "%1"

để truy cập 2010.

Nó vẫn có mục:

"C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE" "%1"  

cho văn phòng 2007.

Tệp không tồn tại ở vị trí đó nên nó không xuất hiện trong bộ chọn ứng dụng cho đến khi tôi thay đổi mục nhập.

Khi tôi cập nhật sổ đăng ký, tôi đã hoàn toàn chọn Microsoft Access trực tiếp từ danh sách các ứng dụng có sẵn.


4

Tôi đã có một vấn đề tương tự với văn bản tuyệt vời. Nó sẽ không xuất hiện trong Open Withhộp thoại cho dù tôi có làm gì đi nữa. Đây là cách tôi giải quyết nó.

  1. Mở regedithoặc bất kỳ trình soạn thảo đăng ký.
  2. Điều hướng đến : \HKEY_CURRENT_USER\Software\Classes\Applications\sublime_text.exe\shell\open.
  3. Loại bỏ tất cả các khóa con.
  4. Tạo khóa con commandcó giá trị "C:\path\to\sublime_text.exe" "%1"(bao gồm dấu ngoặc kép!).

Tất nhiên, điều này sẽ hoạt động với bất kỳ chương trình nào, không chỉ Văn bản cao siêu. Chỉ cần thay thế sublime_text.exebằng chương trình thực thi của bạn.


2

Nếu tất cả đều thất bại, bạn có thể chỉnh sửa sổ đăng ký theo cách thủ công (trước tiên hãy sao lưu tổ ong / khóa):

Mỗi loại tệp (tiện ích mở rộng) có ứng dụng được liên kết có khóa Đăng ký trong HKEY_CLASSES_ROOT.

Hoặc sử dụng FileAsoc , Trình chỉnh sửa Hiệp hội Tệp Windows

FileAsoc là phần mềm miễn phí mã nguồn mở.

Hoặc File Type Doctor , một phần của Công cụ Sức mạnh Yếu tố Sáng tạo (phần mềm chia sẻ)

văn bản thay thế


Cách của họ để thay đổi điều này thông qua sổ đăng ký được chỉ ra trong một câu trả lời khác tại đây
sancho.s Tái lập lại

1
Đối với tôi, FileAsoc dường như không phải là một đề xuất tốt, nó yêu cầu môi trường thời gian chạy VB khá đặc biệt (không được cài đặt theo mặc định và dường như rất khó để liên kết từ trang của FileAsoc đến những mục này đã chết. Power Tools "cũng không còn khả dụng nữa!
mã hóa

1
Có vẻ như chương trình này đã rơi ra khỏi web. Thay vào đó, hãy thử FileTypesMan (làm việc cho tôi): nirsoft.net/utils/file_types_manager.html
roblogic

1

Tôi đã khắc phục sự cố cho wmplayer.exe của mình (bị thiếu và không thể thêm vào khi mở bằng hội thoại) bằng cách thay đổi

HKEY_CURRENT_USER\Software\Classes\Applications/wmplayer.exe\shell\open\command

từ

"C:\Program Files\Windows Media Player\wmplayer.exe" "%1"

đến

"C:\Programme\Windows Media Player\wmplayer.exe" "%1"

Đâu Programmelà phiên bản địa phương (tiếng Đức) của 'Tệp chương trình'. Điều này không có ý nghĩa gì với tôi (vì khi tôi nhấn "copy path" trong menu shell của windows explorer, đường dẫn chứa Program Files. Và khi tôi thêm Media Player bằng cách duyệt trong đoạn hội thoại "open with", nó cũng được thêm vào Program Files), nhưng nó hoạt động như một giải pháp, trong đó đơn giản là xóa khóa reg thì không.


0

Tôi đã thấy các trường hợp một số hộp thoại không nhắc bạn về độ cao bảo mật và không cung cấp cho bạn một thông báo rằng thay đổi không thể được thực hiện. Hãy thử làm điều đó thông qua bảng điều khiển

Bảng điều khiển -> Chương trình -> Chương trình mặc định -> Đặt hiệp hội

Hoặc chỉ cần gõ "mở tệp" vào tìm kiếm menu bắt đầu và chọn "Tạo loại tệp luôn mở với một chương trình nhất định"


0

Gần đây tôi đã gặp một vấn đề tương tự với tất cả các hiệp hội tệp phương tiện của mình và có vẻ như do một trình phát phương tiện đáng ghét có tên là DAPlayer. Ngay cả dưới Control Panel/ Programs/ Default Programs/ Set Default Programs, tôi không thể thay đổi chương trình mặc định. Rõ ràng, nó đặt các UserChoicekhóa bên dưới HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExtscho tất cả các liên kết tệp của nó thành quyền truy cập chỉ đọc, ngay cả đối với quản trị viên. Ngay cả sau khi gỡ cài đặt chương trình, tất cả các hiệp hội của tôi vẫn bị kẹt trên "Ứng dụng không xác định".

Cách đơn giản nhất để khắc phục điều này là duyệt đến phím đó trong Regedit, nhấp chuột phải vào nó và chọn Quyền, nhấp vào nút Nâng cao, chọn "Thay thế tất cả các quyền đối tượng con" và nhấp vào OK.

Hoặc nếu bạn thích dòng lệnh, bạn có thể sử dụng công cụ Windows Resource Kit có tên SubInACL :

subinacl /subkeyreg HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts /grant=administrators=f /grant=system=f /grant="%USERNAME%"=f

Nhưng hãy cẩn thận với các thao tác đăng ký hàng loạt như thế này: sử dụng không đúng cách có thể khiến hệ thống của bạn không thể hoạt động! Tôi không chịu trách nhiệm cho hành động của bạn.


0

NirSoft thường giải cứu: http://www.nirsoft.net/utils/file_types_manager.html

Đó là FileTypesMan (Trình quản lý loại tệp cho Windows) của NirSoft.


Chào mừng bạn đến với Siêu người dùng! Trên trang web Hỏi & Đáp này, chúng tôi cố gắng cung cấp câu trả lời tốt cho câu hỏi mà mọi người đăng. Một phần của điều này bao gồm câu trả lời trong bài đăng của bạn, thay vì chỉ cung cấp một liên kết đến một trang khác có thể trả lời câu hỏi . Vui lòng chỉnh sửa câu trả lời của bạn để bao gồm các giải pháp thực tế cho câu hỏi được đăng. Tham khảo Cách tham khảo tài liệu do người khác viết để được giúp đỡ.
cascer1

0

Một cách tốt để khắc phục điều này là xóa tất cả các bản ghi liên quan đến ứng dụng bạn muốn

Ví dụ:

Nếu tệp .exe được đặt ở danh sách Open With là NOTEPAD ++. EXE

1 - Mở regedit và tìm notepad ++.

2 - Xóa tất cả các hồ sơ được tìm thấy

3 - Bây giờ hãy thử mở với hộp thoại một lần nữa

... Chảy máu !!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.