CMD script kullanarak EXE uzantısı olmadan yürütülebilir bir dosya nasıl çalıştırılır?


19

Durum, ortam değişkenini ayarlaması gereken taşınabilir bir uygulamam olması. Diğer bir şekilde, kullanıcı programı veri dizininde ayarlarını yapmaya çalışır.

Yürütülebilir dosyayı taşınabilir olmayan modda çalıştırmaktan kaçınmak için (herhangi bir parametre olmadan çalışmasına izin vermemek için) Dosyanın ".exe" uzantısını sildim, ancak daha sonra sadece fare ile değil, istediğim startkomutla da çalıştıramıyorum .

Exe uzantısı olmayan böyle bir yürütülebilir dosyayı çalıştırmak için herhangi bir yolu var mı?


Sorunuz gerçekten açık değil. .EXE uzantısını yanlışlıkla sildiyseniz, neden geri ekleyemiyorsunuz? Bunu yapmanızı engelleyen nedir?
Karan

Programın herhangi bir parametre olmadan çalışması için yanlışlıkla vurmamak için sildim. Programı yalnızca başlangıçta seçeneklerle çalıştırmak için güvenli olmak istiyorum.
rsk82

Yanıtlar:


14

Evet - sadece programın tam dosya adını girmek genellikle işe yarar. ( .exeGereksinim yalnızca GUI kabuğunda bulunur.)

( Dosyanın bir uzantıya ihtiyacı olabilir , bu nedenle - çalıştırılamıyorsanız, dosyayı yeniden adlandırın veya tekrar deneyin.)MyProgramMyProgram.notexeMyProgram.lol


1
Ben bir kendi kendine ayıklanan Zip dosyasını yeniden adlandırıldı Bu kez beni şaşırttı .exeiçin .zipcmd.exe üzerinden açmaya çalıştı, ve o hala yerine WinZip açarak kendini çıkarıcı koştu.
user1686

Değişen uzantı ile hile bilmiyordum, bu program biraz kukla bir gerekebilir, bu çok sezgisel değil. Ama yine de uygulamanın kendisi için ana yürütülebilir dosya katı bir isme ihtiyacı olan başka bir bummer karşılaştı.
rsk82

1
MZ
İle

17

Herhangi bir uzantıya ve ilk iki bayta sahip herhangi bir dosya MZbir EXE gibi ele alınır.

Aşağıdakileri deneyin:

  1. Yeni bir a.txtdosya oluşturun ,
  2. Bunu yazın MZ, kaydedin.
  3. cmd, klasörüne git,
  4. Yazın a.txtve hata mesajı görüyorum.

Değiştir MZile MStekrar deneyin - dosyası ile çalışacak bu sefer not defteri açıldı.


1
Windows 10'da çalışmaz. Her zaman '' is not recognized as an internal or external command, operable program or batch file.hata gösterir
phuclv

Ben sadece Windows 10 Pro ile evde denedim ve gerçekten bir hata gösterir 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.daha önce iş yerinde Windows 10 LTSB kullandım ve işe yaramadı
phuclv

Hala Windows 10 X64'ümde çalışıyor, yukarıdakiyle aynı örnek.
Петър Петров

Herhangi bir uzantı olmadan bir dosyayı yürütmeye çalışırsanız, 'file' is not recognizedhata verir.
Stevoisiak

2

.Exe uzantısı olmadan dosyadan işlemi çalıştırmayı denedim. Ben cmd.exe bunu başarısız olduğunda bazı powershell komutları deneyin. İşte burada:

Start-Süreci

Belgeler Varsayılan sözdizimi ve UseShellExecute hakkında yazıyor. Sadece:

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

komut UseShellExecute sözdizimini kullanır ve ilgili dosya türüyle ilişkili olmayan uygulama hakkında hata döndürür. Varsayılan sözdizimi Ben UseShellExecute sahip olmayan parametre zorlamak için:

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

Programım başlatıldı ve konsola çıktı yazdı. Bu benim için yeterliydi, çünkü sadece test amaçlı ihtiyacım vardı.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.