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:
  1. FTP Adresi (Örn: ftp.siteniz.com)
  2. Kullanıcı Adı ve Şifre
  3. İ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.
 
Geri
Yukarı