दिलचस्प पोस्ट
char! = (हस्ताक्षरित चार), char! = (अहस्ताक्षरित चार) UI थ्रेड पर कार्य निरंतरता मुझे एक साधारण printf के साथ संकलन त्रुटियां क्यों मिल रही हैं? एन्जोरल 2 में ऑटोसक्रोल क्या मैं web.config में maxJsonLength के लिए एक असीमित लंबाई निर्धारित कर सकता हूँ? रेल 3 में ग्लोबल वैरिएबल कहां रखा जाए उपशीर्षक नियंत्रक पहले से ही Mediaplayer त्रुटि एंड्रॉइड सेट होना चाहिए स्ट्रिंग लीटरल्स को गैर प्रकार के टेम्प्लेट पैरामीटर के रूप में अनुमति नहीं है प्रोसेसिंग के लिए जावा लाइब्रेरी पथ कैसे सेट करें पायथन में लिनक्स कंसोल विंडो चौड़ाई कैसे प्राप्त करें कैसे एक फाइल DOS (विंडोज कमांड प्रॉम्प्ट) में मौजूद है, यह कैसे सत्यापित करें। बैट फ़ाइल? मान्य होने के दौरान एक त्रुटि हुई HRESULT = '8000000 ए' निश्चित सी पुस्तक गाइड और सूची जावास्क्रिप्ट बहुआयामी arrays जावा में स्ट्रिंगटोकनाइज़र वर्ग बनाम स्ट्रिंग.split विधि का प्रदर्शन

कैसे एक सी # आवेदन में एक VBScript फ़ाइल को कॉल करने के लिए?

मुझे अपने सी # विंडोज अनुप्रयोग में एक VBScript फ़ाइल (.vbs फ़ाइल एक्सटेंशन) कॉल करने की आवश्यकता है। मैं यह कैसे कर सकता हूँ?

दृश्य स्टूडियो में VBScript फ़ाइल तक पहुंचने के लिए ऐड-इन है लेकिन मुझे इसके पीछे कोड में स्क्रिप्ट का उपयोग करना होगा। यह कैसे करना है?

Solutions Collecting From Web of "कैसे एक सी # आवेदन में एक VBScript फ़ाइल को कॉल करने के लिए?"

निम्न कोड VBScript स्क्रिप्ट को बिना किसी संकेत या त्रुटियों और कोई शेल लोगो निष्पादित करेगा।

System.Diagnostics.Process.Start(@"cscript //B //Nologo c:\scripts\vbscript.vbs"); 

एक और जटिल तकनीक का उपयोग करना होगा:

 Process scriptProc = new Process(); scriptProc.StartInfo.FileName = @"cscript"; scriptProc.StartInfo.WorkingDirectory = @"c:\scripts\"; //<---very important scriptProc.StartInfo.Arguments ="//B //Nologo vbscript.vbs"; scriptProc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //prevent console window from popping up scriptProc.Start(); scriptProc.WaitForExit(); // <-- Optional if you want program running until your script exit scriptProc.Close(); 

StartInfo गुणों का उपयोग करके आपको प्रक्रिया सेटिंग्स में काफी दाने का उपयोग मिलेगा।

यदि आप स्क्रिप्ट प्रोग्राम द्वारा विंडो, आदि प्रदर्शित करना चाहते हैं, तो आपको Windows स्क्रिप्ट होस्ट का उपयोग करना होगा। आप सीधे cscript सीधे निष्पादित करने की कोशिश कर सकते हैं लेकिन कुछ सिस्टम पर यह सिर्फ संपादक को लॉन्च करेगा 🙂

एक और तरीका है कि एक वीबीनेट क्लास लाइब्रेरी प्रोजेक्ट तैयार करना, वीबीएसटीपी कोड को वीबी.नेट क्लास फ़ाइल में कॉपी करें, और अपने सी # कार्यक्रम से वीबीनेट क्लास लाइब्रेरी को संदर्भित करें।

आपको VBScript और VB.NET (कुछ होना चाहिए) के बीच किसी भी अंतर को ठीक करने की आवश्यकता होगी।

यहाँ लाभ, यह है कि आप कोड इन-प्रोसेस चलेंगे।

यह एक अनुमति मुद्दा है। आपका आवेदन ऐप, 2008 में ऐसा करने के लिए सर्वोच्च अनुमति स्तर पर चलना चाहिए। पहचान प्रशासक होना चाहिए।

आप मतलब है कि आप सी # से एक vbs फ़ाइल चलाने की कोशिश करते हैं?

यह सी # कोड से किसी अन्य प्रोग्राम को चलाने की तरह किया जा सकता है:

 Process.Start(path); 

लेकिन आपको यह सुनिश्चित करना है कि वह कुछ भी नहीं मांगेगी, और यह दुभाषिया के कमांड लाइन संस्करण के साथ चल रहा है:

 Process.Start("cscript path\\to\\script.vbs"); 

खोजकर्ताओं के लाभ के लिए, मैंने यह पद पाया, जो स्पष्ट उत्तर देता है (विशेषकर यदि आपके पास पैरामीटर हैं)। यह परीक्षण किया है – ठीक काम करने लगता है

 string scriptName = "myScript.vbs"; // full path to script int abc = 2; string name = "Serrgggio"; ProcessStartInfo ps = new ProcessStartInfo(); ps.FileName = "cscript.exe"; ps.Arguments = string.Format("\"{0}\" \"{1}\" \"{2}\"", scriptName, abc, name); //This will equate to running via the command line: // > cscript.exe "myScript.vbs" "2" "Serrgggio" Process.Start(ps);