Khi bạn triển khai Trình đơn xếp tầng trong Thư mục Tệp (Thư mục) bằng cách sử dụng Lệnh con hoặc là ExtendedSubCommands khóa đăng ký trong Windows 10, một điều thú vị sẽ xảy ra. Mục cuối cùng trong menu Xếp tầng của bạn được thực thi khi bạn bấm chuột phải vào lối tắt Ghim File Explorer trên Thanh tác vụ và bấm vào một thư mục trong Danh sách Nhảy, thay vì mở cửa sổ thư mục.

(Lỗi này lần đầu tiên được báo cáo tại diễn đàn Microsoft Hỏi & Đáp và bạn có thể xem phản hồi của tôi ở đó. Vì sau đó nó đã được báo cáo bởi hai người dùng khác, tôi quyết định viết một bài đăng trên blog về điều này.)

Tệp REG mẫu để tái tạo vấn đề

Sao chép nội dung sau vào Notepad, lưu dưới dạng “mymenu.reg” và chạy nó.

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTdirectoryshellCustomMenu] "Icon"="shell32.dll,39" "MUIVerb"="MyMenu" "SubCommands"="" [HKEY_CLASSES_ROOTdirectoryshellCustomMenushellmenu1] "Icon"="c:windowssystem32cmd.exe,0" @="Command Prompt" [HKEY_CLASSES_ROOTdirectoryshellCustomMenushellmenu1command] @="cmd.exe "%1"" [HKEY_CLASSES_ROOTdirectoryshellCustomMenushellmenu2] "Icon"="c:windowssystem32cmd.exe,0" @="Run Maintenance (Batch File)" [HKEY_CLASSES_ROOTdirectoryshellCustomMenushellmenu2command] @="D:Toolsmaintenance.bat"

Menu xếp tầng sẽ hiển thị và hoạt động hoàn toàn tốt khi bạn nhấp chuột phải vào thư mục tệp.

Bug: Sự cố xảy ra khi bạn nhấp chuột phải vào mục File Explorer Pinned trên thanh Taskbar và nhấp vào một thư mục trong Jumplist. Thay vì mở cửa sổ thư mục, lệnh cuối cùng trong menu Xếp tầng của bạn (trong ví dụ này là “Chạy bảo trì”) được thực thi. Đây là một lỗi!

Giải pháp # 1

Việc triển khai menu Xếp tầng trong khóa đăng ký “Thư mục” hoặc “AllFileSystemObjects” sẽ không gây ra sự cố này. Tuy nhiên, khi được triển khai trong khu vực đăng ký Thư mục hoặc AllFileSystemObjects, menu sẽ hiển thị cho các thư mục ảo như This PC, Recycle Bin, v.v. cũng như các Thư mục và tệp được nén. Để ngăn nó xuất hiện cho các tệp, thư mục ảo và thư mục Nén (nén), hãy thêm dấu kiểm bằng cách tạo giá trị AppliesTo REG_SZ trong menu Xếp tầng của bạn.

Đặt dữ liệu AppliesTo value thành:

kind:file folder AND System.FileExtension:<>".zip"

Revised Registry Settings

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTFoldershellCustomMenu] "Icon"="shell32.dll,39" "MUIVerb"="MyMenu" "SubCommands"="" "AppliesTo"="kind:file folder AND System.FileExtension:<>".zip"" [HKEY_CLASSES_ROOTFoldershellCustomMenushellmenu1] "Icon"="c:windowssystem32cmd.exe,0" @="Command Prompt" [HKEY_CLASSES_ROOTFoldershellCustomMenushellmenu1command] @="cmd.exe "%1"" [HKEY_CLASSES_ROOTFoldershellCustomMenushellmenu2] "Icon"="c:windowssystem32cmd.exe,0" @="Run Maintenance (Batch File)" [HKEY_CLASSES_ROOTFoldershellCustomMenushellmenu2command] @="D:Toolsmaintenance.bat"

Giải pháp # 2

Trong tệp REG mẫu ở đầu bài viết, bao gồm lệnh menu thứ 3 khởi chạy Explorer% 1.

[HKEY_CLASSES_ROOTdirectoryshellCustomMenushellmenu3command]
@="explorer.exe "%1""

Nhưng nó sẽ luôn hiển thị trong menu Cascading của bạn .. Khi bạn chọn một thư mục trong Jumplist, mục này (cuối cùng trong menu) sẽ được thực thi.