2010-01-24 11 views
15

मैं Shell.Application वस्तु है, जो मुझे एक ज़िप फ़ाइल की स्क्रिप्ट निर्माण करने की अनुमति देता का उपयोग कर रहा हूँ।कैसे VBScript में एक फ़ाइल के लिए पूरी तरह से योग्य पथ प्राप्त करने के लिए?

लेकिन इसके लिए काम करने के लिए, मैं ज़िप फ़ाइल का पूरा पथ की जरूरत है। File.zip काम नहीं करता। मैं c:\the\full\path\file.zip जरूरत है, भले ही स्क्रिप्ट एक ही निर्देशिका है जहाँ फ़ाइल पाया जाता है के भीतर चल रहा है।

मैं VBScript में फ़ाइल का पूरा पथ कैसे प्राप्त कर सकता हूं?

cmd.exe खोल में %~fI विस्तार की तरह कुछ।

उत्तर

23

Scripting.FileSystemObject पर पर उदाहरण

Set objFS=CreateObject("Scripting.FileSystemObject") 
Set objArgs = WScript.Arguments 
strFile= objArgs(0) 
Set objFile = objFS.OpenTextFile(strFile) 
Set objFile = objFS.GetFile(strFile) 
WScript.Echo objFile.Path 

के लिए, वहाँ एक तरीका है कि यह करता है GetAbsolutePathName कहा जाता है।

यह वही मेरे लिए काम किया है:

Dim folderName 
folderName = "..\.." 

Dim fso 
Set fso = CreateObject("Scripting.FileSystemObject") 

Dim fullpath 
fullpath = fso.GetAbsolutePathName(folderName) 

WScript.Echo "folder spec: " & folderName 
WScript.Echo "fullpath: " & fullpath 
5

कमांड लाइन

c:\test> cscript //nologo myscript.vbs myfile 
संबंधित मुद्दे