2016-04-02 11 views
0

Java öğreniyorum ve programlarınızı derlemek ve çalıştırmak için komut istemi kullanmak zorunda olduğunuzu can sıkıcı buluyorum ... Bu yüzden düşündüm: Visual Basic'te bir program hazırlamanın bir yolu var. komut istemi ve kodu yazın?Bir VB programı bir komut istemi ile etkileşimde bulunmak mümkün mü?

+0

Evet, sanırım aksi halde çok daha az kullanım olur. Sorunuzu düzenlemenin daha spesifik olmasını düşünürüm. – newguy

+0

Ya da bir Java IDE (Entegre Geliştirme Ortamı) kullanabilirsiniz. VB geliştirme, komut satırını kullanmaya gerek kalmadan tüm 'derleme ve çalıştırma' işlerini yürüten Visual Studio IDE'de yapılır. – user2864740

+0

İlk düzenlemenizin Java'yı kullandığınızı görüyorum, ancak soru başlığınız yine de VB'ye ait ve etiketleriniz VBA * ve * VB.Net. Sorunuzu "Java Programını nasıl otomatik olarak derleyebilir ve çalıştırabilirim?" Gibi bir şey olmasını öneriyoruz. – ThunderFrame

cevap

-1

Özetle, evet. Sadece bir komut istemi gönderebilirsiniz.

Sub Foo() 

    Dim cmd_Command As String = "DIR %USERPROFILE%/Desktop/*.* > %USERPROFILE%/Files.log" 

    CreateObject("WScript.Shell").Exec("CMD /C " & cmd_Command) 

End Sub 
+0

Ben bu kodu kullandım ve cmd açılır ve gerçekten hızlı kapanır – Eddie

+0

Bu kod, kötü uygulamaları farklılaştırır. 1. Bir COM nesnesinin bir örneğini oluştururken, işin bitmesinden sonra ** FinalReleaseComObject ** yöntemi ile bırakmanız ve ** Nothing ** (** nul ** C#) olarak ayarlamanız gerekir. 2. COM Framework'ü bir çözüm olarak düşünmeye gerek yoktur. Çünkü .Net Framework Sınıf Kitaplığı, yönetilen kodun aynısını yapmasını sağlar. – ElektroStudios

+0

. COM ile yapılan işlemlerin farkındayım. Soru sordu "eğer bir yol varsa ...." Genel soru = genel cevap, bu bitmiş kod olarak itilmiş değildi. –

0

Sen Process sınıfını kullanabilirsiniz.

Using p As New Process 

    p.StartInfo.FileName = Path.Combine(Environment.SystemDirectory, "CMD.exe") 
    p.StartInfo.Arguments = String.Format("/C ""{0}"" ", "Dir /B /S /A-D ""*""") 
    p.StartInfo.WorkingDirectory = Environment.SystemDirectory 

    p.Start() 
    p.WaitForExit() 

End Using 

Ama CMD çağrı sadece yukarıdaki örnekte olduğu gibi aynı şekilde, directlly Java derleyici aramaya gerek yoktur. Ya da programınızı doğrudan Java'da geliştirmeyi düşünebilirsiniz ve Java derleyicinin arabirimini kullanın.

0

Komut isteminde çalıştırmanız gereken komut kümesini çalıştırmak için bu kodu kullanın.

Dim commands As Object() = New Object() {"echo Command One", "echo Command Two", "..."} 
Dim startInfo As ProcessStartInfo = New ProcessStartInfo(Path.Combine(Environment.SystemDirectory, "cmd.exe")) 
startInfo.WindowStyle = ProcessWindowStyle.Normal 
startInfo.Arguments = "/c """ 
For Each obj As Object In commands 
    startInfo.Arguments += obj.ToString + " & " 
Next 
startInfo.Arguments = startInfo.Arguments.Substring(0, startInfo.Arguments.LastIndexOf(" & ")) 
startInfo.Arguments += """" 
Process.Start(startInfo) 

Ya da sadece komut istemine daha kısaca komutları çalıştırmak için bu kodu kullanın.

Shell("cmd /c ""echo Command One & Command Two & ...""") 
İlgili konular