Promotic

Příklad na přenos souborů pomocí FTP (ActiveX)

Je to příklad na přenos souborů přes Internet/Intranet protokolem FTP. Předpokládá použití ActiveX objektu ChilkatFTP. Ten lze ve "free" verzi stáhnout ze stránek výrobce: http://www.chilkatsoft.com/downloads.asp. Výrobce také nabízí příklady pro použití na stránkách http://www.example-code.com/vbscript/ftp.asp a dokumentaci k rozhraní objektu zveřejnil na stránce http://www.chilkatsoft.com/refdoc/xChilkatFtpRef.html.

Použitá technologie se spouští v synchroním režimu, proto bude vhodné v systému PROMOTIC k navázání spojení a přenosu souborů použít objekt PmaSequencer. Ve skriptu je vytvořena instance na tento objekt metodou CreateObject.

Skript pro odeslání souboru na FTP server v režimu pasivního přenosu.:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oftp, success, localFilename, remoteFilename;

oftp = Pm.AxGetObject("new", "ChilkatFTP.ChilkatFTP.1");
oftp.Hostname = "nameserver";
oftp.Username = "*****";
oftp.Password = "*****";

// Výchozí datový přenos je nastaven v "Active" módu (opakem je "Passive")
// Změna na pasivní režim přenosu se nastaví:
oftp.Passive = 1;

// Připojení a přihlášení na FTP server.
success = oftp.Connect();
if (success != 1)
{
Pm.MessageBox("Warning - Connect", oftp.LastErrorText);
}
else
{
// Změna nebo nastavení složky na FTP serveru kde je nebo bude umístěn požadovaný soubor.
success = oftp.ChangeRemoteDir("/FTP");
if (success != 1)
{
Pm.MessageBox("Warning - ChangeRemoteDir", oftp.LastErrorText);
}
else
{
// Přenesení souboru
localFilename = "C:\\uplist.txt";
remoteFilename = "uplist.txt";

success = oftp.PutFile(localFilename, remoteFilename);
if (success != 1)
{
Pm.MessageBox("Warning - PutFile", oftp.LastErrorText);
}
else
{
oftp.Disconnect();
Pm.MessageBox("Transfer file", "Soubor přenesen!");
}
}
}


Skript pro stažení souboru z FTP serveru v režimu pasivního přenosu.:
JavaScriptVBScriptVyber a zkopíruj do schránky

var oftp, success, localFilename, remoteFilename;

oftp = Pm.AxGetObject("new", "ChilkatFTP.ChilkatFTP.1");
oftp.Hostname = "nameserver";
oftp.Username = "*****";
oftp.Password = "*****";

// Výchozí datový přenos je nastaven v "Active" módu (opakem je "Passive")
// Změna na pasivní režim přenosu se nastaví:
oftp.Passive = 1;

// Připojení a přihlášení na FTP server.
success = oftp.Connect();
if (success != 1)
{
Pm.MessageBox("Warning - Connect", oftp.LastErrorText);
}
else
{
// Změna nebo nastavení složky na FTP serveru kde je nebo bude umístěn požadovaný soubor.
// Tento krok je nutný pouze pokud stahovaný soubor není v kořenové složce pro FTP připojení
success = oftp.ChangeRemoteDir("/FTP");
if (success != 1)
{
Pm.MessageBox("Warning - ChangeRemoteDir", oftp.LastErrorText);
}
else
{
// Stažení souboru
localFilename = "C:\\uplist.txt";
remoteFilename = "uplist.txt";

success = oftp.GetFile(remoteFilename, localFilename);
if (success != 1)
{
Pm.MessageBox("Warning - GetFile", oftp.LastErrorText);
}
else
{
oftp.Disconnect();
Pm.MessageBox("Transfer file", "Soubor stažen!");
}
}
}
© MICROSYS, spol. s r. o.