stò creando una sorta di ftp client e qundi vorrei esplorare il contenuto della root ftp.
Per far ciò eseguo dei comandi dos contenuti in un file test.ftp e redirigo l'output sul file temp .txt secondo il seguente codice:
codice:
Dim objFSO, objTextFile, objTextFile2, oScript, oScriptNet, oFileSys, oFile, strCMD, strTempFile, strCommandResult
Dim ftp_address, ftp_username, ftp_password, ftp_physical_path, ftp_files_to_put
Dim sReadLine, sRead, sReadAll, trovato

trovato=false
ftp_address          = "xxxxx.it"
ftp_username         = "bjkbkjbk"
ftp_password         = "ffjgfjgjgj"

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.CreateTextFile("c:\test.ftp",true)
objTextFile.WriteLine "lcd " & "c:\"
objTextFile.WriteLine "open " & ftp_address
objTextFile.WriteLine ftp_username
objTextFile.WriteLine ftp_password
objTextFile.WriteLine "prompt"
objTextFile.WriteLine "ls"
objTextFile.WriteLine "bye"
objTextFile.Close
Set objTextFile = Nothing
Set wshshell=CreateObject("wscript.shell")
wshshell.Run "%comspec% /c ftp.exe -s:c:\test.ftp >c:\temp.txt"
Set oFileSys =CreateObject("Scripting.FileSystemObject")
Set oFile = oFileSys.OpenTextFile ("c:\temp.txt", 1, False, 0) 
Do While Not oFile.AtEndOfStream
	sReadLine=oFile.ReadLine
	if(trovato)then	
		if(sReadLine<>"226 Transfer complete")then
			document.Write "" & sReadLine & "
"
		else
			trovato=false
		end if
	end if
	if(sReadLine="ls")then
		sReadLine=oFile.ReadLine
		sReadLine=oFile.ReadLine
		trovato=true
	end if
	
loop
oFile.Close
Set oFile = Nothing
Call oFileSys.DeleteFile("c:\temp.txt", True )
Call objFSO.DeleteFile( "c:\test.ftp", True )
Set oFileSys = Nothing
Set objFSO = Nothing

Ho l'impressione che nonostante il comando ""%comspec% /c " implichi che l'esecuzione vada avanti solo al termine del comando dos, in realta quando cerca di aprire il file questo non è ancora stato ultimato...un aiuto??!!! :master: