Domanda

Ho bisogno di creare un file di testo denominato " listfile.txt " nella cartella C: \ Documents and Settings \ All Users \ Application Data \ NetApp \ system così ho fatto la seguente VBScript per acheive che

Const CommonAppData = &H23&  ' the second & denotes a long integer '
Const OSCPATH = "\netapp\system"
Dim fso, MyFile

Set objShell  = CreateObject("Shell.Application")
Set objFolder = objShell.Namespace(CommonAppData)

Set objFolderItem = objFolder.Self

'MsgBox objFolderItem.Name & ": " & objFolderItem.Path


Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("objFolderItem.Path & OSCPATH\listfile.txt", True)
MyFile.WriteLine("This is a test.")
MyFile.Close

, ma il suo percorso errori lancio di nota non viene trovato

** Windows Script Host

Script: C: \ Documents and Settings \ puthuprf \ Desktop \ Test.vbs Line: 15 Char: 1 Errore: Percorso non trovato Codice: 800A004C

Fonte: errore di runtime di Microsoft VBScript


OK --------------------------- **

È stato utile?

Soluzione

Questa linea nello script non è corretto:

Set MyFile = fso.CreateTextFile("objFolderItem.Path & OSCPATH\listfile.txt", True)

Per inserire le variabili e le proprietà degli oggetti in una stringa, è necessario concatenare utilizzando l'operatore &, in questo modo:

Set MyFile = fso.CreateTextFile(objFolderItem.Path & OSCPATH & "\listfile.txt", True)


Si noti che si consiglia di utilizzare il metodo BuildPath per combinare più parti del percorso, in quanto si libera di aggiungere i separatori di percorso necessarie (\) manualmente:

strFileName = fso.BuildPath(objFolderItem.Path, OSCPATH)
strFileName = fso.BuildPath(strFileName, "listfile.txt")

Set MyFile = fso.CreateTextFile(strFileName, True)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top