Visual Basic - Enviar archivo comprimido por FTP

Life is soft - evento anual de software empresarial
   
Vista:

Enviar archivo comprimido por FTP

Publicado por Dundermiflin (1 intervención) el 22/11/2009 08:46:29
Necesito que desde una de las sedes de la empresa me envien periodicamente unos archivos HTML que se van generando en algunos equipos en concreto.
Esto ha de ahcerse sin la intervencion del usuario y sin que les aparezca la ventanita de CMD, ni ninguna otra que pueda causar algun "despiste" de las aplicaciones que ejecutan habitualmente (lo que generaria llamadas al SAT, quejas, etc....)

Estos archivos se han de enviar via FTP en cuanto el equipo detecte que existe conexion "viva" de Internet

De momento he encontrado este script que copia y comprime , pero no veo la manera de enviarlo por FTP y/o detectar cuando la conexion esta activa para que no lo envie si no hay conexion (equipos portatiles)

Para comprimir:

[code]
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery _
("Select * from Win32_Directory where name = 'c:\\Scripts'")
For Each objFolder in colFolders
errResults = objFolder.Compress
Wscript.Echo errResults
Next
[/code]

para copiar usando WMI

[code]
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colFolders = objWMIService.ExecQuery( _
"Select * from Win32_Directory where Name = 'c:\\Scripts'")
For Each objFolder in colFolders
errResults = objFolder.Copy("D:\Archive")
Wscript.Echo errResults
Next[/code]

A ver si hay algun guru de VBScript y me ayuda, porque yo ni idea de como hacerlo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Enviar archivo comprimido por FTP

Publicado por Leandro (6 intervenciones) el 22/11/2009 22:48:34
hola para comprimir utilizando Shell.Application

Option Explicit

Private Sub Form_Load()
Comprimir "C:\CarpetaComprimida.zip", "C:\Archivo.exe"
End Sub

Private Function Comprimir(DestPath As Variant, SrcPath As Variant) As Boolean
On Error GoTo Fail

Dim oShell As Object

Set oShell = CreateObject("Shell.Application")

If Dir(DestPath) = "" Then
Open DestPath For Binary As #1
Put #1, , CStr("PK" & Chr(5) & Chr(6) & String(18, Chr(0)))
Close
End If


oShell.NameSpace(DestPath).CopyHere SrcPath
Comprimir = True
Fail:

End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Enviar archivo comprimido por FTP

Publicado por Antonio (1 intervención) el 07/12/2009 22:56:26
Hola, sabes que tengo que hacer para que cuando lo vuelva a ejecutar sustituya el archivo que estaba comprimido anteriormente, ok Gracias por la ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar