Domanda

Sto usando VBScript e il mio obiettivo è quello di essere in grado di sostituire una lettera di guida per un percorso di mia scelta. Ho bisogno dell'unità D e, se non è disponibile, devo verificare se è già mappato nel punto giusto; Quindi avvisare l'utente se non lo è. Ho trovato questo: http://technet.microsoft.com/en-us/library/ee156605.aspx E sto cercando di adattare il loro secondo esempio:

Set objShell = WScript.CreateObject("WScript.Shell")
Set objExecObject = objShell.Exec("cmd /c ping -n 3 -w 1000 157.59.0.1")
Do While Not objExecObject.StdOut.AtEndOfStream
    strText = objExecObject.StdOut.ReadLine()
    If Instr(strText, "Reply") > 0 Then
        Wscript.Echo "Reply received."
        Exit Do
    End If
Loop

(i miei adattamenti):

Set objShell = WScript.CreateObject("WScript.Shell")
Set objExecObject = objShell.Exec("cmd /c substr")
strText = ""

Do While Not objExecObject.StdOut.AtEndOfStream
    strText = strText & objExecObject.StdOut.ReadLine()
Loop

Wscript.Echo strText

Quindi probabilmente cercherò la stringa che dice dove è mappata l'unità D. Ho anche provato objShell.Exec("subst"), ma ancora non ottengo alcun output. Qualcuno ha qualche idea su ciò che potrei fare di sbagliato? O esiste un modo migliore per raccontare mapping di guida? Grazie,

213897

È stato utile?

Soluzione

Il tuo script non funziona perché hai sbalordito il nome del comando - è subst, non substr.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top