OpenTextFile auf einem remote-computer
Ich versuche zu Lesen, remote-text-Dateien mit diesem code:
function defdate(ipaddress)
deffilePath = chr(34) & "\\" & ipaddress & "\c$\" & deffileName & chr(34)
wscript.echo deffilePath
set deffile = objFSO.OpenTextFile(deffilePath)
do while not deffile.endofstream
s=deffile.readline
wscript.echo s
loop
deffile.close
end function
Meine deffilePath unten erweitert in Zeichenfolgen wie diese:
"\\10.211.19.207\c$\Program Files\Common Files\Symantec Shared\VirusDefs\definfo.dat"
Allerdings bekomme ich "Microsoft VBScript runtime Fehler: Dateiname oder-Nummer falsch".
Was könnte das problem sein?
- Ist c$ nicht das problem?
- Nein, das problem ist der fehlende backslash. "c$" ist der name der versteckte Freigabe, die Windows erstellt standardmäßig für die "c:" - Laufwerk.
- Andy, der backslash darf nicht fehlen-das ist ein rendering-problem.
- Ich weiß, dass nun "Roger", sagte ich, bevor Sie Feste. Wellen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht (lies: "muss nicht") schließen Sie den Pfad in Anführungszeichen.
Müssen Sie nur gehören die Anführungszeichen-die CHR(34) -- bei der Verwendung der Kommandozeile oder für ähnliche APIs. Wenn eine Methode benötigt nur einen mit dem Namen, lassen Sie Sie aus.
Das problem ist die "chr(34)" am Anfang und am Ende. Bei der Eingabe eines Pfades im Windows-ausführen-Menü müssen Sie die Anführungszeichen, aber bei der übergabe einen Pfad zu einer Funktion rufen Sie wie das Sie nicht wollen, dass Sie.
Haben Sie versucht, entfernen Sie die chr(34) am Ende?
Denke ich, müssen Sie zwei umgekehrte Schrägstriche am Anfang einer UNC-Pfadnamen. Versuchen Sie, eine andere!
Meine Vermutung wäre, dass es funktioniert mit "\\10.211.19.207\c$\Program Files\Common Files\Symantec Shared\VirusDefs\definfo.dat".