Biểu tượng ShellNew cho. Loại tệp


8

Tôi đã tạo thành công lệnh ShellNew để tôi có thể tạo một tệp trống mới không có phần mở rộng tệp. Tệp reg trông như thế này:

Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\.]

[HKEY_CLASSES_ROOT\.]
@="emptyFile"

[HKEY_CLASSES_ROOT\.\ShellNew]
"NullFile"=""
@="Empty File"
"ItemName"=""

[HKEY_CLASSES_ROOT\.\ShellNew\Config]
"NoExtension"=""

[-HKEY_CLASSES_ROOT\emptyFile]

[HKEY_CLASSES_ROOT\emptyFile]
@="Empty File"

[HKEY_CLASSES_ROOT\emptyFile\DefaultIcon]
@="%SystemRoot%\\system32\\imageres.dll,2"

Điều này làm việc tuyệt vời và tất cả. Nó tạo tệp theo cách tôi muốn, nhưng Biểu tượng được hiển thị trong cửa sổ ShellNew là biểu tượng cho Phân vùng hệ thống như vậy:

1

Làm cách nào tôi có thể thay đổi biểu tượng này để khớp với DefaultIcon tôi đang cung cấp cho chính loại tệp? Tôi đã thử tạo Giá trị chuỗi "Biểu tượng" giống như những gì tôi phải làm cho các mục menu Unity và Sublime Text, và điều đó không hoạt động cho dù tôi có đặt nó ở đâu.


Tôi có thể nhân rộng. Cố gắng tìm hiểu xem có cách nào khắc phục không ...
Karan

Tôi cho rằng bạn chưa tìm ra giải pháp? Tôi nghĩ rằng phải có một cái gì đó trong sổ đăng ký nói rằng vì nó không có loại tệp liên quan, nó giả sử nó là một ổ đĩa?
GodsBane

Có vẻ như nó, và nếu tôi đã tìm ra nó, tôi sẽ đăng một câu trả lời tất nhiên.
Karan

Tôi dường như không thể sao chép này.
Visual Vincent

Câu trả lời:


3

Hãy thử điều này, hoạt động như ma thuật.

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.]
@="emptyFile"

[HKEY_CLASSES_ROOT\.\ShellNew]
"NullFile"=""
@="Empty File"
"ItemName"=""
"IconPath"="C:\\windows\\system32\\imageres.dll,2"

[HKEY_CLASSES_ROOT\.\ShellNew\Config]
"NoExtension"=""

[-HKEY_CLASSES_ROOT\emptyFile]

[HKEY_CLASSES_ROOT\emptyFile]
@="Empty File"

[HKEY_CLASSES_ROOT\emptyFile\DefaultIcon]
@="%SystemRoot%\\system32\\imageres.dll,2"

Chỉ thay đổi. Tôi đã thêm IconPath ở cấp .ext. Hiệp hội loại tập tin là công cụ tuyệt vời!


Một điều nữa là, đối với DefaultIcon của ProgID, bạn đã đặt một chuỗi có thể mở rộng, chuỗi này thực sự phải là loại REG_EXPAND_SZ thay vì REG_SZ. Bất kể, ShellNew dường như không sử dụng biểu tượng được xác định ở đó.
w32sh

Đúng, đó là nó. Làm tốt!
Ben N

Wow, ~ 9 tháng tuổi, và một sửa chữa đơn giản như vậy. Công việc tuyệt vời
GodsBane

Nó cho biết tiền thưởng sắp đóng cửa "trong 2 giờ". Đó là khi tôi trả lời :)
w32sh 22/2/2016

0

Bạn không nên sử dụng "imageres.dll, 3" vì biểu tượng thứ 3 của nó trong imageres.dll?

Bạn có thể thử ứng dụng Trình chỉnh sửa chương trình mặc định, mở chương trình, nhấp vào biểu tượng, tìm loại tệp, nhấp tiếp theo, chọn biểu tượng từ hình ảnh và lưu dưới dạng tệp .REG, sau đó kiểm tra những gì bên trong .reg.


Bạn không thể sử dụng Trình chỉnh sửa chương trình mặc định cho việc này vì tệp mà nó tạo không có phần mở rộng.
GodsBane

@ orion 310591: Chỉ mục bắt đầu từ 0. Vì vậy, về mặt kỹ thuật, đây là biểu tượng thứ 2.
w32sh

0

Nếu bạn có thể tìm thấy loại "Tệp trống" trong công cụ FileTypesMan, bạn có thể thay đổi Biểu tượng mặc định ở đó.

FileTypesMan: http://www.nirsoft.net/utils/file_types_manager.html


Tôi có ấn tượng rằng những loại công cụ đó chỉ làm những gì OP đã làm thủ công, nhưng tôi sẽ thử nó khi tôi có thời gian.
Ben N

@BenN Tôi đoán bạn đã đúng - Tôi giả sử OP chỉ muốn 'sửa' nhưng tôi đoán họ muốn tìm giải pháp regedit.
Stian Lund

Một nơi nào đó phải ghi đè biểu tượng vì FileTypesMan nhìn thấy biểu tượng chính xác, hiển thị nó ở đó và ShellNew vẫn hiển thị biểu tượng ổ đĩa hệ điều hành. Đây vẫn là trường hợp trong Windows 10, mặc dù tôi nghi ngờ rằng nó sẽ thay đổi.
GodsBane 17/2/2016

0

Vì lý do nào, điều này sử dụng cùng một biểu tượng mặc định như Cổ đĩa của bạn .

Bạn có thể tự mình nhìn thấy điều này bằng cách tạo khóa sau, nếu nó chưa tồn tại:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\DriveIcons\C\DefaultIcon

Và đặt (Mặc định) thành:

%SystemRoot%\\system32\\imageres.dll,2

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây

Tôi sợ tôi không thể trả lời chính xác tại sao hành vi này xảy ra. Thực sự có một luồng khác ở đây quản lý để thay đổi biểu tượng bằng một khóa đăng ký khác.

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.