Komut isteminde bir .exe çalıştırmak için Bat dosyası


134

Bir .bat dosyası oluşturmak istiyorum, böylece üzerine tıklayıp çalıştırabilirim:

svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service

Birisi .bat dosyasının yapısıyla ilgili bana yardımcı olabilir mi?


Yanıtlar:


199

Bir programı başlatmak ve ardından programın çıkmasını beklemeden komut istemini kapatmak için:

start /d "path" file.exe

10
@MehdiJ: ana dizini ayarlar.
abatishchev

2
bat dosyasını web tarayıcısından çalıştırmak mümkün mü? bat dosyasını çağırmak için bir javascript gibi ??
Karthi

5
@Karthi: Üzgünüm, imkansız
abatishchev

2
@Karthi Javascript'in güvenlik nedeniyle bir bat dosyası çalıştırmasını istemezsiniz.
Roland

1
programın çıkmasını nasıl bekliyorsunuz?
m4l490n

48

Kullanabilirsiniz:

start "windowTitle" fullPath/file.exe

Not: İlk tırnak işareti orada olmalıdır, ancak bunlara herhangi bir şey koymanız gerekmez, örneğin:

start "" fullPath/file.exe

9
'İlk tırnak işareti' yalnızca pencere başlığıdır ve gerekli DEĞİLDİR. Bununla birlikte, başlangıç ​​dizinini / d kullanarak belirtmek en iyisidir. Bu, start /d "fullpath" file.exe tüm bağımlı dosyaların, örneğin bir DLL'nin bulunmasını ve yüklenmesini sağlar.
Tom Wilson

34

not defteri aşağıdaki kod türünü bir not defterine çalıştırmak ve .bat uzantısına kaydetmek için çok basit bir koddur. Exapmle: notepad.bat

start "c:\windows\system32" notepad.exe   

("c: \ windows \ system32" kodunun üstünde, .exe programınızı tuttuğunuz yoldur ve notepad.exe, .exe program dosyası dosyanızdır)

zevk almak!


27

Sadece o satırı yarasa dosyasına koyun ...

Alternatif olarak, svcutil.exe için bir kısayol bile oluşturabilir, ardından argümanları 'hedef' penceresine ekleyebilirsiniz.


7

Bir yarasa dosyasının yapısı yoktur ... komut satırına bu şekilde yazarsınız. En sevdiğiniz düzenleyiciyi açın ... çalıştırmak istediğiniz kod satırını kopyalayın ... ve dosyayı ne olursa olsun.bat veya her neyse.cmd olarak kaydedin.


7

Bir dosyaya yapıştırın ve ona "ServiceModelSamples.bat" veya başka bir ad verin.

Birinci satır olarak "@echo off" ekleyebilirsiniz, böylece komut ekrana yazdırılmaz:

@echo off
svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service

Ve @echo offilk satır olarak eklemek yerine, @yankılanmasını istemediğiniz satırın başına basitçe ekleyebilirsiniz ...
menssana

6

Seni ne durduruyor?

Bu komutu bir metin dosyasına koyun, .bat (veya .cmd) uzantısıyla kaydedin ve üzerine çift tıklayın ...

Komutun sisteminizde çalıştığını varsayarsak, sanırım bu kadar.


6

Gerçekten akıllı olmak istiyorsanız, komut satırına şunu yazın:

echo svcutil.exe /language:cs /out:generatedProxy.cs /config:app.config http://localhost:8000/ServiceModelSamples/service >CreateService.cmd

O CreateService.cmdzaman istediğiniz zaman çalıştırabileceğinize sahipsiniz ( dosyalar .cmdiçin yalnızca başka bir uzantıdır .bat)


3

Komut hakkında burada açıklandığı gibi Start, aşağıdakiler uygulamanızı belirttiğiniz parametrelerle başlatır:

start "svcutil" "svcutil.exe" "language:cs" "out:generatedProxy.cs" "config:app.config" "http://localhost:8000/ServiceModelSamples/service"
  • "svcutil", startkomuttan sonra belirtilen uygulama çalıştırıldığında CMD penceresine verilen addır. Bu, startkomutun gerekli bir parametresidir .

  • "svcutil.exe"çalıştırmak istediğiniz uygulamanın mutlak veya göreceli yoludur. Tırnak işaretlerini kullanmak, yolda boşluk bırakmanıza olanak tanır.

  • Başlatılacak uygulama belirtildikten sonra, aşağıdaki tüm parametreler uygulamaya gönderilen argümanlar olarak yorumlanır.


2

Klasörleriniz "dosya uzantılarını gizle" olarak ayarlanmışsa, dosyayı * .bat veya * .cmd olarak adlandırırsınız ve yine bir metin dosyası (gizli .txt uzantısı) olur. Dosyayı doğru şekilde adlandırabildiğinizden emin olun!


1

Burada görünen önemli nokta, svcutil'in varsayılan olarak komut satırından kullanılamaması, onu vs xommand satır kısayolundan çalıştırabilirsiniz, ancak daha önce vcvarsall.bat dosyasını çalıştırmadıkça normalde yardımcı olmayacak bir toplu iş dosyası yaparsanız senaryo. Aşağıda bir örnek

"C: \ Program Files \ Microsoft Visual Studio * version * \ VC \ vcvarsall.bat"
svcutil.exe / dil: cs /out:generatedProxy.cs /config:app.config http: // localhost: 8000 / ServiceModelSamples / service
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.