Hạn chế dịch vụ khởi chạy từ đăng ký gói ứng dụng


0

Có thể hạn chế Dịch vụ khởi chạy trên Mac OSX (Tôi đang dùng Yosemite nhưng tôi đoán điều tương tự cũng áp dụng cho các phiên bản cũ hơn) khi đăng ký Gói ứng dụng nhất định?

Ví dụ: nếu tôi có trên đĩa của mình một số bản sao gói ứng dụng của cùng một ứng dụng, tôi không muốn tất cả chúng xuất hiện trong menu "Mở bằng" cho loại mà chúng xử lý. Tôi chỉ muốn một trong / Ứng dụng được "đăng ký".

Tôi biết rằng tôi có thể xóa các bản sao trong menu "Mở bằng" nhưng thực tế không phải vậy (tôi thực sự có các gói ứng dụng đó trên đĩa ở một nơi khác). Tôi cũng không muốn đổi tên các gói ứng dụng đó, đặt chúng vào thư mục ẩn hoặc lưu trữ chúng.

Có thể điều chỉnh hành vi này?

Câu trả lời:


2

Bạn có thể sử dụng lsregister -uđể hủy đăng ký một ứng dụng:

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -u /path/to/application.app

Tuy nhiên, ứng dụng có thể được đăng ký lại tại một số điểm.

Nếu bạn chỉ muốn xóa một ứng dụng khỏi menu Mở, hãy chạy defaults delete /path/to/Application.app/Contents/Info.plist CFBundleDocumentTypes. Sửa đổi Info.plistphá vỡ chữ ký mã nếu ứng dụng được ký và nó đã khiến các ứng dụng hộp cát bị sập khi khởi chạy kể từ ngày 10.8.


Đối với những người khác bắt gặp câu trả lời này, lsregistercó tại /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregisterMac High Sierra
Brett Zamir
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.