Làm thế nào để chạy một tập tin thực thi mà không có phần mở rộng EXE bằng cách sử dụng tập lệnh CMD?


19

Tình huống là tôi có một ứng dụng di động cần phải đặt biến môi trường. Theo cách khác, nó cố gắng thiết lập cài đặt của nó trong thư mục dữ liệu chương trình người dùng.

Để tránh chạy chương trình thực thi ở chế độ không di động (để tránh cho phép nó chạy mà không có bất kỳ tham số nào) Tôi đã xóa phần mở rộng ".exe" của tệp, nhưng sau đó tôi không thể chạy nó không chỉ bằng chuột (mà tôi muốn) mà còn thông qua startlệnh .

Có cách nào để chạy tập tin thực thi đó không có phần mở rộng exe không?


Câu hỏi của bạn không thực sự rõ ràng. Nếu bạn vô tình xóa tiện ích mở rộng .EXE, tại sao bạn không thể thêm lại? Điều gì ngăn cản bạn làm như vậy?
Karan

Tôi đã xóa nó nhằm mục đích không vô tình nhấn nó để chương trình sẽ chạy mà không có bất kỳ tham số nào. Tôi muốn được an toàn khi chỉ chạy chương trình với các tùy chọn khi bắt đầu.
rsk82

Câu trả lời:


14

Có - chỉ cần nhập tên tệp đầy đủ của chương trình thường hoạt động. ( .exeYêu cầu chỉ tồn tại trong vỏ GUI.)

(Tuy nhiên, thể tệp cần một tiện ích mở rộng - vì vậy nếu bạn không thể MyProgramchạy, hãy đổi tên thành MyProgram.notexehoặc MyProgram.lolthử lại.)


1
Điều này làm tôi ngạc nhiên một lần, khi tôi đổi tên tệp Zip tự giải nén từ .exesang .zip, đã cố mở nó thông qua cmd.exe và nó vẫn chạy trình giải nén tự thay vì mở WinZip.
grawity

Tôi không biết mẹo với việc thay đổi tiện ích mở rộng, chương trình đó có thể cần một số giả, điều đó không trực quan lắm. Nhưng dù sao tôi cũng gặp phải một người lập dị khác, chính ứng dụng cần có khả năng thực thi chính của nó để có một tên nghiêm ngặt.
rsk82

1
Bất cứ điều gì mà bắt đầu bằng MZsẽ được thực hiện bởi cmd, kiểm tra dưới đây
Петър Петров

17

Bất kỳ tệp nào có bất kỳ phần mở rộng và hai byte đầu tiên MZsẽ được xử lý như EXE.

Hãy thử làm theo:

  1. Tạo một a.txttệp mới ,
  2. Nhập vào nó MZ, lưu nó.
  3. Mở cmd, đi đến thư mục của nó,
  4. Nhập a.txtvà xem thông báo lỗi.

Thay thế MZbằng MSvà thử lại - lần này notepad sẽ chạy với tệp được mở.


1
Không hoạt động trong Windows 10. Nó luôn hiển thị '' is not recognized as an internal or external command, operable program or batch file.lỗi
phuclv 22/03/18

Tôi vừa thử ở nhà với Windows 10 Pro và thực sự thấy có lỗi This version of D:\test.txt is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher.trước đây tôi đã sử dụng Windows 10 LTSB tại nơi làm việc và nó không hoạt động
phuclv

Nó vẫn hoạt động trên Windows 10 X64 của tôi, ví dụ tương tự như trên.
Петър Петров

Nếu bạn cố gắng thực thi một tệp mà không có bất kỳ phần mở rộng nào, nó sẽ 'file' is not recognizedbáo lỗi.
Stevoisiak

2

Tôi đã cố chạy tiến trình từ tệp mà không có phần mở rộng .exe. Khi tôi không làm như vậy từ cmd.exe, tôi sẽ thử một số lệnh powershell. Đây là một:

Quá trình bắt đầu

Tài liệu nói về Cú pháp mặc định và UseShellExecute. Chỉ với:

Start-Process -FilePath .\my-program -Wait -NoNewWindow

lệnh sử dụng cú pháp UseShellExecute và trả về lỗi về ứng dụng không liên quan đến loại tệp đó. Để buộc cú pháp Mặc định tôi đã thêm tham số mà UseShellExecute không có:

Start-Process -FilePath .\my-program -Wait -RedirectStandardError ./error.txt -NoNewWindow

Chương trình của tôi đã được bắt đầu và viết đầu ra cho giao diện điều khiển. Điều này là đủ cho tôi, bởi vì tôi chỉ cần nó cho mục đích thử nghiệm.

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.