AMS 9: FTP Sunucusundan Otomatik Dosya İndirme Rehberi
AutoPlay Media Studio projelerinizde dosyalarınızı yerel klasörlerde tutmak yerine, bir FTP sunucusundan dinamik olarak indirmek ister misiniz? Bu yöntemle kullanıcılarınıza her zaman en güncel dosyaları sunabilirsiniz.Gereken Bilgiler
Başlamadan önce elinizde şunların olması gerekir:- FTP Adresi (Örn: ftp.siteniz.com)
- Kullanıcı Adı ve Şifre
- İndirilecek Dosyanın Yolu
Adım 1: İndirme Takip Fonksiyonu (Callback)
İndirme işleminin ne durumda olduğunu (yüzde kaç indi, ne kadar süre kaldı) görmek için projenizin Global Functions kısmına şu fonksiyonu ekleyin:
Kod:
function FTPCallback(BytesRead, FileSize, TransferRate, SecondsLeft, SecondsLeftFormat, Message)
-- İndirme durumunu Debug ekranında veya bir Label nesnesinde gösterebilirsiniz
Debug.Print("İndirilen: " .. BytesRead .. " / Toplam: " .. FileSize .. "\r\n");
return true; -- İndirmeye devam et
end
Adım 2: Butona İndirme Kodunu Yazma
Bir buton oluşturun ve içine şu kodları yapıştırın:
Kod:
-- Dosyayı FTP'den çekip Masaüstüne kaydeder
FTPWI.Download("ftp://ftp.siteniz.com/dosya.exe", _DesktopFolder .. "\\indirilen.exe", "kullanici_adi", "sifre", MODE_BINARY, 20, 21, true, FTPCallback);
-- Hata kontrolü
err = Application.GetLastError();
if err ~= 0 then
Dialog.Message("Hata", "Dosya indirilemedi: " .. _tblErrorMessages[err]);
end
Önemli İpucu: Nereye Kaydedilecek?
- Dosyayı geçici klasöre atmak için: _TempFolder
- Dosyayı kullanıcının masaüstüne atmak için: _DesktopFolder
- Programın çalıştığı klasöre atmak için: _SourceFolder değişkenlerini kullanabilirsiniz.
Forum İçin Teknik Not
Üyelerin işini kolaylaştırmak için şu bilgiyi de ekleyebilirsin:Dikkat: Sunucunuzda güvenlik duvarı (Firewall) varsa, bağlantı sağlanamayabilir. Bu durumda port ayarlarını (standart 21) ve pasif mod seçeneklerini kontrol etmeniz gerekebilir.