Skip links

Axapta’da FTP işlemleri

Axapta’da FTP işlemleri

Ax içinden uzaktaki bir FTP adresine ulaşarak dosya işlemlerini gerçekleştirme.
WinInet class’ına ihtiyaç duyar. xpo olarak içeri aktarabilirsiniz.
İndirmek için tıklayın

static void TestFTP(Args _args)
{
int handle;
WinInet inet = new WinInet();
;
handle = inet.internetConnect(‘ftp.xxxx.org’,’user name’,’password‘);
inet.FtpSetCurrentDirectory(handle,’//http’); //çalışacağımız klasörü seçiyoruz.
inet.ftpDeleteFile(handle,’1.txt’);
inet.FtpPutFile(handle,’C:\\2.txt’,’2.txt’);
inet.ftpGetFile(handle,’1.txt’,’e:\\1.txt’);
inet.ftpRenameFile(handle,’1.txt’,’111.txt’);
inet.internetCloseHandle(handle);
}
static void uploadTestFile3(Args _args)
{
object ftpo;
object ftpResponse;
System.Net.FtpWebRequest request;
System.IO.StreamReader reader;
System.IO.Stream requestStream;
System.Byte[] bytes;
System.Net.NetworkCredential credential;
System.String xmlContent;
System.Text.Encoding utf8;
System.Net.FtpWebResponse response;
;
// Read file
reader = new System.IO.StreamReader(‘C:\\2.txt’);
utf8 = System.Text.Encoding::get_UTF8();
bytes = utf8.GetBytes( reader.ReadToEnd() );
reader.Close();
// little workaround to get around the casting in .NET
ftpo = System.Net.WebRequest::Create(‘ftp://ftp.xxxx.org/http/5.txt‘);
request = ftpo;

credential = new System.Net.NetworkCredential(‘username’,’password’);
request.set_Credentials(credential);
request.set_ContentLength(bytes.get_Length());
request.set_Method(‘STOR’);
// ‘Bypass’ a HTTP Proxy (FTP transfer through a proxy causes an exception)
// request.set_Proxy( System.Net.GlobalProxySelection::GetEmptyWebProxy() );
requestStream = request.GetRequestStream();
requestStream.Write(bytes,0,bytes.get_Length());�
requestStream.Close();

ftpResponse = request.GetResponse();
response = ftpResponse;
info(response.get_StatusDescription());
}

Opinions

Join the Discussion