Benim sorunum şu ki, Windows'ta, yürütmeden hemen sonra kapanan komut satırı pencereleri var. Bunu çözmek için, varsayılan davranışın pencerenin açık tutulması olmasını istiyorum. Normalde, bu davranış aklıma gelen üç yöntemle önlenebilir:
pause
Toplu programlardan sonra bir satır koymak , kullanıcının çıkmadan önce bir tuşa basmasını istemek için- Bu toplu iş dosyalarını veya diğer komut satırı işlem araçlarını (hatta hizmet başlatma, yeniden başlatma vb.
net start xy
Veya benzeri bir şeyle)cmd.exe
çalıştırma (Başlat - Çalıştır - cmd.exe) - Bu programları şununla çalıştırma
cmd /k
:cmd /k myprogram.bat
Ancak kullanıcının içinde bulunduğu başka durumlar da var:
- Programı ilk kez çalıştırır ve verilen programın Komut İsteminde (Windows Komut İşlemcisi) çalışacağını bilmez, örneğin Başlat menüsünden (veya başka bir yerden) bir kısayol çalıştırırken, VEYA
- Cmd.exe aracını her zaman çalıştırmak biraz rahatsız edicidir ve bu komutların kodunu her yerde duraklatmak veya açıkça çıkmamak için kodunu yeniden yazmak için zaman / fırsat bulamaz.
AutoRun girişi oluşturma ve içeriğini şu konumlarda değiştirme ile açıkça açarken varsayılan davranışını değiştirme hakkında bir makale okudum :cmd.exe
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\AutoRun
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Command Processor\AutoRun
(AutoRun öğeleri _String values_
...)
cmd /d /k
Denemek için bir değer olarak koydum , ancak bu yukarıda belirtilenlerin davranışını değiştirmedi ... Açıkça açılırken komut satırı penceresinin davranışını değiştirdi (Start-Run- cmd.exe).
Peki nasıl çalışıyor? Bana bu sorunu çözmek için herhangi bir fikir verebilir misiniz?
stdout
sürekli olarak asla iyi bir nedenden dolayı görünür olmayacak şekilde gönderilir .