2011-08-04 14 views
8

मैंने इसे खोज लिया है और कुछ पेज आए हैं जो वास्तव में उपयोगी नहीं थे या बहुत जटिल थे (मैं एक कुशल बैच फ़ाइल प्रोग्रामर नहीं हूं!)! मुझे बैच फ़ाइल को छिपे हुए फॉर्म में चलाने की आवश्यकता है (कोई कंसोल विंडो नहीं)। बैच फ़ाइल को बाहरी एप्लिकेशन या कोड से नहीं बुलाया जाएगा। इसे क्लाइंट द्वारा क्लिक किया जाएगा और फिर मैं कोई कंसोल पेज नहीं दिखाना चाहता हूं (कॉल पेज द्वारा कॉल किए जाने वाले पेज दिखाए जाने चाहिए)! बैच फ़ाइल बिल्कुल के रूप में इस प्रकार है:एक साधारण बैच विंडो छिपाना

@echo off 
call setup.exe 
IF EXIST "C:/caillog" goto tracking 
IF NOT EXIST "C:/caillog" goto end 


:tracking 
call dotnet4.exe 
call ClientService.msi 
goto end 

:end 

उत्तर

11

मैं VBScripts का उपयोग यह छिपा खोलने के लिए इस तरह,:

Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("%batchfile%"), 0, True 

के लिए जैसे बल्ले फ़ाइल मैं चलाना चाहते हैं run.bat है तो मैं की तरह करूँगा यह

objShell.Run("run.bat"), 0, True 

बैच फ़ाइल चलाने के बजाय vb फ़ाइल चलाएं। नोटपैड में

लिखें यह और के रूप में * .vbs

+0

% बैचफ़ाइल% file.bat या% file.bat% होना चाहिए या यह कैसे काम करता है? –

+1

मैंने इसे अपनी बैच फ़ाइल के लिए प्लेसहोल्डर के रूप में रखा है, जहां मैंने "% बैचफ़ाइल%" रखा है, बस उद्धरण –

+1

उदाहरण के बीच अपना बैच फ़ाइल पथ डालें उदाहरण - objShell.Run ("C: \ batchfile.bat"), 0 , सच –

0

के रूप में अन्य लोगों ने कहा, VBS का उपयोग सहेजें।

Set WinScriptHost = CreateObject("WScript.Shell") 
WinScriptHost.Run Chr(34) & "C:\FilePath" & Chr(34), 0 
Set WinScriptHost = Nothing 

यही वह है जो मैं उपयोग करता हूं।

संबंधित मुद्दे