Gặp vấn đề tương tự như @jtpereyda và giải pháp từ @bobbymcr cũng không hiệu quả với tôi. Tôi đã cố gắng để có được tất cả các tham số dòng lệnh được truyền vào các tập lệnh node.js mà không cần node.exe trên lệnh.
Vấn đề là nếu bạn đã liên kết chương trình với phần mở rộng thông qua Open With
hộp thoại thì bạn sẽ tạo một liên kết ứng dụng, thay vì liên kết mở rộng tệp, giữa hai phần. Và các hiệp hội ứng dụng được ưu tiên.
Nếu bạn không chỉnh sửa sổ đăng ký, bạn có thể sửa đổi (Default)
khóa theo đường dẫn sau:
HKEY_CLASSES_ROOT\Applications\node.exe\shell\open\command
Bạn nên thay thế node.exe
bằng ứng dụng bạn đang điều chỉnh.
Hoặc bạn chỉ có thể xóa HKEY_CLASSES_ROOT\Applications
hoàn toàn thư mục ứng dụng khỏi thư mục và ftype
liên kết của bạn sẽ bắt đầu hoạt động.
Hãy chắc chắn sử dụng %*
nó sẽ vượt qua trong các đối số dòng lệnh không xác định còn lại hoặc không có gì cả. Nếu bạn làm như vậy, "%2" "%3" "%4" "%5"
bạn sẽ nhận được 5 thông số chuỗi trống được truyền vào ứng dụng của mình khi bạn không chỉ định bất kỳ đối số dòng lệnh nào.
Cuối cùng, nếu bạn không ổn khi sửa đổi sổ đăng ký bằng tay thì bạn có thể sử dụng công cụ phần mềm miễn phí từ Nirsoft - FileTypesManager - http://www.nirsoft.net/utils/file_types_manager.html
Liên kết tệp sẽ xuất hiện ở đầu danh sách, không có bất kỳ văn bản nào trong cột mở rộng đầu tiên. Chỉ cần tìm tên của tệp thực thi trong danh sách và chọn nó để sửa đổi command line
trường cho open
tên hành động.
Trên windows7, các thay đổi đã được phản ánh ngay lập tức mà không cần khởi động lại hoặc khởi động lại ứng dụng. Tuy nhiên, tiện ích Nirsoft có một tính năng "Làm mới máy tính để bàn" trên bất kỳ sửa đổi nào, do đó tôi tin rằng có thể Vista hoặc các phiên bản HĐH trước sẽ lưu trữ dữ liệu. Trong trường hợp đó, tiện ích sẽ là một lựa chọn tốt hơn, nếu không bạn có thể cần phải đăng xuất và đăng nhập để xem các thay đổi.