2013-03-10 9 views
5

के साथ उपयोग में है या नहीं, मैं एक छोटी वीबीएस स्क्रिप्ट बनाना चाहता हूं जो फ़ाइल को उपयोग में है या नहीं, तो उपयोगकर्ता को बताएगा। निश्चित रूप से, मेरे पास एक फ़ाइल है और, यदि यह फ़ाइल उपयोग में है, तो वीबीएस मुझे एक संदेश दिखाता है कि फ़ाइल उपयोग में है। अगर फ़ाइल किसी भी प्रक्रिया द्वारा उपयोग में नहीं है, तो वीबीएस मुझे संदेश दिखाता है कि फ़ाइल उपयोग में नहीं है। मैं this कोशिश कर रहा था लेकिन यह मुझे कोई संदेश नहीं दिखाता है।जांचें कि फ़ाइल VBS

+0

KB लेख VBA, जो माइक्रोसॉफ्ट ऑफिस का मैक्रो भाषा है के लिए नमूना कोड है। वीबीस्क्रिप्ट वीबीए से अलग है। –

+0

@ फेसिसिटिस - क्या आप अधिक विशिष्ट हो सकते हैं? –

+0

मैं वीबीएस फ़ाइल बनाना चाहता हूं और इसे एक ही फ़ोल्डर में एक मीडिया फ़ाइल के साथ रखना चाहता हूं। जब मैं मीडिया फ़ाइल खोलता हूं और फिर यह वीबीएस, वीबीएस को टेक्स्ट बॉक्स के साथ संदेश बॉक्स दिखाने की ज़रूरत होती है कि किसी भी प्रक्रिया द्वारा मीडिया फ़ाइल का उपयोग किया जाता है (यह दिखाने की कोई ज़रूरत नहीं है कि यह प्रक्रिया क्या है)। लेकिन अगर मैं केवल इस वीबीएस को खोलता हूं, मीडिया नहीं, तो वीबीएस मुझे टेक्स्ट बॉक्स के साथ संदेश बॉक्स दिखाता है कि मीडिया फाइल किसी के द्वारा उपयोग में नहीं है। – Fesiitis

उत्तर

8

आप एक WMI क्वेरी के साथ की कोशिश कर सकते:

filename = "..." 

Set wmi = GetObject("winmgmts://./root/cimv2") 

qry = "SELECT * FROM Win32_Process WHERE CommandLine LIKE '%" & filename & "%'" 
For Each p In wmi.ExecQuery(qry) 
    WScript.Echo "Media file in use." 
    WScript.Quit 0 
Next 

WScript.Echo "Media file not in use." 
+0

यह काम करता है। बहुत धन्यवाद! – Fesiitis

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