Cmd.exe Sessizce Nasıl Yürütülür?


23

Windows XP'nin Çalıştır iletişim kutusunda aşağıdaki kodu kullanıyorum.

cmd /c "C://Program Files/Adobe/Adobe Photoshop CS4/Photoshop.exe"

Program yolunu, sisteminizde kurulu olan herhangi bir programla değiştirebilirsiniz. Sorun Photoshop başlatılıyor, ancak cmd.exe penceresi hala duruyor. Ben cmd.exe dosyasını açılır istemiyorum. Bir cmd.exe penceresi açmadan bir programın cmd üzerinden başlatılması mümkün mü? Sessizce cmd çalışmam gerekiyor. BTW, bir program için bu koda ihtiyacım var. Bu yüzden programı cmd üzerinden başlatmam gerekiyor ama cmd.exe penceresi açılmıyor.

Ek Yorumlar

Çünkü bu kodu bir programda kullanacağım. Program cmd exe başlatabilir. Ancak sorun şu ki, Photoshop'un hangi sürümünün yüklü olduğunu bilmiyoruz. Bu yüzden Photoshop CS4 veya Photoshop CS5 olabilir. Normalde Çalıştır alanına aşağıdaki kodu yazdığınızda, hangisi yüklü olursa olsun Photoshop'u alırsınız.

photoshop

Bu yüzden Photoshop'u bu yöntemle başlatmak istiyorum. Program cmd'yi yukarıdaki gibi fakat aşağıdakine benzer bir şekilde başlatacaktır:

cmd /c photoshop

Ama bu çalışmıyor. Ve hatta cmd penceresi belirir. Süreci sessizce çalıştırmak istiyorum. Ayrıca başka bir araç yüklememeliyiz. Varsayılan bir Windows üzerinde çalışacak bir çözüm istiyorum.


6
CMD'yi ilk başta istemiyorsanız neden doğrudan Photoshop'u doğrudan başlatmak yerine cmd.exe'yi kullanıyorsunuz?
CarlF

Cmd.exe / q / c [komut] komutunu deneyin
qroberts

Hayır bu işe yaramaz. Denesene! Ayrıca, eğer bir şey cmd / q / c "c: \ program files \ microsoft office \ office11 \ winword.exe" olursa komut penceresi açılır. Bunu istemiyor. Eğer deneseydin bunu bilirdin !!
barlop 16

3
Üzülmenize gerek yok. Ayrıca, sorgulayan erkek de kadın değil.
qroberts

1
CMDOW sözde bunu yapıyor.
CGA

Yanıtlar:


22

Sorun, Komut İstemi'nin (cmd) sonlanamamasıdır - Photoshop'un sonlandırılmasını bekleyen ekranda oraya sıkışmıştır.

Photoshop'u bir yarasa dosyasında başlatmak ve toplu iş dosyasının devam etmesine ve sonlandırmasına izin vermek için , belirli bir program veya komutu ayrı bir pencerede başlatan start komutunu kullanın .

Örneğin:

start "" "C:\Program Files\Adobe\Adobe Photoshop CS4\Photoshop.exe"

3
start komutu bir komut penceresinden çalıştırılmaz mı? Bu durumda bir komut penceresi açılacaktır. Sanırım bir kez cmd.exe de başlamanın tek avantajı, küçültülmesini mi yoksa büyütülmesini isteyip istemediğinizi seçmenize izin vermesiydi .. ama o istemiyorsa, nasıl yardımcı olur? Ve eğer cmd.exe'den start kullanıyorsa, programın yolunu start olmadan da yazabilir.
barlop

@ barlop: Başlamadan, program sona erene kadar komut dosyası dondurulur. Başlangıçta, komut dosyası sonlandırılabilir ve kaybolabilir.
harrymc

ilgi dışında, senaryo ile neyi kastediyorsunuz .. blah.vbs "c: \ .... \ photoshop.exe" 'yi başlatıyorlar mı demek istiyorsunuz? ve blah.vbs (bir komut dosyası) başlatılıyor?
barlop

@ barlop: Sadece eski ve gerçek yarasa dosyasını kastettim, sanırım posterin kullandığı şey. Script-> bat dosyasını değiştirdim.
harrymc

5

HSTART http://www.ntwind.com/software/utilities/hstart.html

Yapabilirsin

  • koşmaya başla
  • c:\hstart\hstart.exe /NOCONSOLE "cmd /c "c:\program files\microsoft office\office11\winword.exe""

veya bir simge oluşturun.

Bazıları yarasa dosyalarını çalıştırmak için kullanırlar (diğerleri bunu da çalıştırabilen cmd.exeve komut penceresini gizleyebilen bir vbs'den yaparlar ) .. ama kullanabilirsiniz hstart.

Yine de başkalarına eko yapıyorum, çünkü bir EXE çalıştırıyorsunuz, eğer başlarsanız .. run..pathofexe veya bunun için bir simge yaparsanız, komut istemi başlatılmaz. Peki neden bunu cmd.exe'den başlatmak istiyorsunuz?

Ayrıca, not .. dos ve pencerelerde dizin yollarında ters eğik çizgi kullanırsınız. Eğik çizgiler, unix veya linux'taki URL'ler veya dizin yolları içindir.


Ne yaptığını biliyor musun hstart? Oluşturulan pencereyi nasıl saklıyor?
Ross Rogers

1
@RossRogers Bilmiyorum ama belki API Monitor apimonitor.com size söylerdi ve ayrıca vbscript de bir pencereyi gizleyebilir. superuser.com/questions/62525/run-a-completly-hidden-batch-file ve bu sitede joeware.net gelen bir program denilen sessiz bahseder joeware.net/freetools/tools/quiet/index.htm bahseder onun program bunu yapmak için ShellExecuteEx kullanır.
barlop

3

En iyi seçenek ne yapmaya çalıştığınızı sormaktır. Bir program için 'kod' istiyorsanız, neden Shell execute kullanmıyorsunuz?

Ve hangi meşru çalışma akışının komut satırının çağrılmasını gerektirdiğini ve bunun da çalıştırılabilir bir çalıştırma olacağını hayal edemiyorum.


3

Bunu başarmak için kullanabileceğiniz Sessiz adlı bir araç var . Basitçe .exe veya .bat dosyanızı bir argüman olarak iletin. Bunun için masaüstünüzde bir cmd komut istemi kısayolu oluşturmanız yeterlidir. Ardından yaptığınız komut istemi kısayolunun özelliklerini alın. Daha sonra, "Kısayol" sekmesinde, "Hedef" alanını şu şekilde doldurun:

[pathToQuiet.exe] [pathToThe(.exe)/(.bat)file]

Kısayolu çift tıklarsanız, işleminiz başlatılır ve bunu işlem listenizden görev yöneticisinde kontrol edebilirsiniz.

Not hem Quiet.exe ve .exe veya .bat dosyasına yolunda herhangi bir beyaz boşluk olmaması gerektiğini.


QuietWindows NT'de XP'ye kadar çalışıyor gibi görünüyor. Windows 10 hakkında bir şey söylemiyor. Windows 10'da kullanmanın güvenli olabileceğini düşünüyor musunuz?
Henrik,

@Henrik ne demek 'güvenli'? Kırmayacak. Denemenin bir zararı yok!
barlop

@Henrik Zarar vermeyeceğim, dene.
Mostafa

2
cmd /c "C://Program Files/Adobe/Adobe Photoshop CS4/Photoshop.exe" %*

• yürütülebilir dosyasının [yol] \ adı.
• betiğinizin ihtiyaç duyduğu diğer tüm argümanlar (% *) - Sadece arka planda exe'yi çalıştırmak için.


Bu işe yaramıyor. "Sistem% * dosyasını bulamıyor" hata iletisini veriyor
DavidPostill

Parçasız çalışır %*.
Jin Kwon,


0

Neden bunu kullanmıyorsun?

cmd /c start "C://Program Files/Adobe/Adobe Photoshop CS4/Photoshop.exe exit"

1
Bu cevabı daha ayrıntılı olarak açıklayabilir misiniz?
bwDraco

Her şeyi denedikten sonra, sadece bu yardımcı oldu. Teşekkürler. #include <windows.h> int main() { system("cmd /c start C:/WINDOWS/system32/notepad.exe"); }
James Koss

-2

Sonunda, en az 10 pencerede cmd pencerelerini gizlemeye / kapatmaya yarayan bir çözüm bulmaya çalıştığım bir yoldan buldum. Active Directory Kullanıcıları ve Bilgisayarları'nı başka bir etki alanı girişiyle runas yoluyla açmak için kullandığım şey.

runas.exe / savecred / user: etki alanı \ kullanıcı adı "cmd / c start mmc C: \ Windows \ System32 \ dsa.msc"

belki de "cmd / c başlangıç" kolay bir çözümdür ...


Neden Windows 10'dan bahsediyorsunuz? Kullanıcı Windows XP kullanıyordu. Bunun en azından Windows XP'de çalıştığını doğruladınız mı?
Ramhound
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.