Показать полную графическую версию : [решено] Залив файлов на хостинг
Нужен скрипт закачивающий файлы с пк на хостинг,есть фтп доступ,должно качаться как минимум 6 файлов
Например: VBScript: работа с протоколом FTP с помощью компонента Chilkat FTP (http://forum.script-coding.com/viewtopic.php?id=2820).
http://f5.s.qip.ru/NGYkK7LX.png первый пример
нужно без доп софта
Или если нельзя без софта по фтп,то хотя бы на почту
http://f5.s.qip.ru/NGYkK7LX.png первый пример »
Чтение документации поможет понять, что библиотеку нужно зарегистрировать в системе посредством «rundll32.exe».
нужно без доп софта »
Описывайте техзадание детально:
1. Режим ftp — активный или пассивный?
2. Доступ анонимный или логин/пароль?
3. О каком хостинге конкретно идёт речь?
4. Чем именно не устраивает сторонняя утилита/библиотека?
Или если нельзя без софта по фтп,то хотя бы на почту »
5. Опишите, каким образом можно «заливать файлы на хостинг» посредством отправки почтового сообщения. Для меня это новость.
Если не считать запрет на использование стороннего софта, то шикарное решение - это крошечная, простая, бесплатная утилита ftpuse (сайт разработчика (http://www.ferrobackup.com/ftpuse/)).
Она монтирует FTP каталог как логический диск.
А дальше - можно крутить-вертеть файлами, насколько фантазии хватит.
Пример bat-файла, заливающего новые файлы из локальной папки на сервер:
ftpuse r: ftpserver.com/data passworrra /USER:userra
xcopy C:\NewFilesDir r: /Z /Y /D
ftpuse r: /delete
C:\NewFilesDir - локальная папка, в которой появляются новые фалы
ftpserver.com/data - адрес FTP сервера и директрии, в которую нужно помещать эти новые файлы
userra - имя пользователя для доступа к FTP-серверу
passworrra - пароль для FTP-сервера
r: - имя создаваемого локального диска
LepeT, примерная болванка:
Option Explicit
Const SHCONTF_NONFOLDERS = &H00040
Const SHCONTF_INCLUDEHIDDEN = &H00080
Dim arrFiles
Dim strFTPFolder
Dim objFSO
Dim objShell
Dim strFile
Dim objDestFolder
Dim lngCurrSize
Dim objFolderItems
Dim objFolderItem
arrFiles = Array( _
"D:\Install\Mozilla Firefox\Mozilla Firefox 28.0\Firefox Setup 28.0.exe", _
"D:\Install\Mozilla Firefox\Mozilla Firefox 28.0\FirefoxPortable_28.0_Russian.paf.exe", _
"D:\Install\Mozilla Firefox\Mozilla Firefox 33.0.2\Firefox Setup 33.0.2.exe", _
"D:\Install\Mozilla Firefox\Mozilla Firefox 33.0.2\FirefoxPortable_33.0.2_Russian.paf.exe" _
)
strFTPFolder = "ftp://User:Password@my.ftpserver.com/DestFolder"
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objShell = WScript.CreateObject("Shell.Application")
Set objDestFolder = objShell.NameSpace(strFTPFolder)
If Not objDestFolder Is Nothing Then
For Each strFile In arrFiles
If objFSO.FileExists(strFile) Then
WScript.Echo strFile, "--->", objDestFolder.self.Path
lngCurrSize = -1
objDestFolder.CopyHere strFile
Do Until lngCurrSize = objFSO.GetFile(strFile).Size
Set objFolderItems = objDestFolder.Items
objFolderItems.Filter SHCONTF_NONFOLDERS + SHCONTF_INCLUDEHIDDEN, "*.*"
For Each objFolderItem In objFolderItems
If objFolderItem.Name = objFSO.GetFileName(strFile) Then
lngCurrSize = objFolderItem.Size
End If
Next
WScript.Sleep 100
Set objFolderItems = Nothing
Loop
Else
WScript.Echo "Can't find source file [" & strFile & "]."
End If
Next
Else
WScript.Echo "Can't connect into FTP folder [" & strFTPFolder & "]."
WScript.Quit 2
End If
Set objShell = Nothing
Set objFSO = Nothing
WScript.Quit 0
Имейте в виду: в случае возникновения ошибки при копировании код останется работать вечно.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.