Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
UrlDownloadFile Hatası
#1
Merhaba arkadaşlar.

Uygulamam da urldownloadfile fonksiyonu ile http://www.xxx.xxx/ali.txt gibi bi url den yerele dosya aktarıp işlem yaptırtıyorum. 

Fonsyion Win10 ve üstünde sorunsuz çalışırken, Win8 ve Win7 de çalışmıyor.. hiç bir şekilde o url ye gitmiyor. 

Başına gelen veya çözümü bilen var mı dır? Ortak kullandığım Fonksiyonum aşağıdaki gibidir.


function DownloadFile(sourcefile, destfile: string): Boolean;
begin
  try
    Result := UrlDownloadToFile(nil, pchar(sourcefile), pchar(destfile), 0, nil) = 0;
  except
    Result := False;
  end;
end;
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#2
(11-02-2024, Saat: 20:28)mcuyan Adlı Kullanıcıdan Alıntı: Merhaba arkadaşlar.

Uygulamam da urldownloadfile fonksiyonu ile http://www.xxx.xxx/ali.txt gibi bi url den yerele dosya aktarıp işlem yaptırtıyorum. 

Fonsyion Win10 ve üstünde sorunsuz çalışırken, Win8 ve Win7 de çalışmıyor.. hiç bir şekilde o url ye gitmiyor. 

Başına gelen veya çözümü bilen var mı dır? Ortak kullandığım Fonksiyonum aşağıdaki gibidir.


function DownloadFile(sourcefile, destfile: string): Boolean;
begin
  try
    Result := UrlDownloadToFile(nil, pchar(sourcefile), pchar(destfile), 0, nil) = 0;
  except
    Result := False;
  end;
end;

Bu UrlDownloadToFile UrlMon.pas içindeki bildiğimiz API ise, onun dönüş değerini hatalı kontrol ettiğinizi görüyorum. Aşağıdaki link'ten dönüş ile ilgili değerleri kontrol ederek işlem yapmanızı tavsiye ederim. Geriye dönen HRESULT değeri S_OK'dan farklı ise, gelen değeri internette aratıp nokta atışı hatayı tespit edebilirsiniz.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#3
Ben bu fonksiyonu yazdım ve dosya almak ve kaydetmek için kullanıyorum.



procedure TfrmDataModule.LoadFileFromURL(FileName: String; url: string);
var
 http : TNetHTTPClient;
 vStream : TMemoryStream;
begin
 try
   try
     http := TNetHTTPClient.Create(nil);
     vStream :=  TMemoryStream.Create;

     if (Pos('https', LowerCase(url)) > 0) then
           HTTP.SecureProtocols  := [THTTPSecureProtocol.TLS1,
                                     THTTPSecureProtocol.TLS11,
                                     THTTPSecureProtocol.TLS12];
     http.Get(url, vStream);
     vStream.Position  :=  0;

     vStream.SaveToFile(FileName);
   except
   end;
 finally
     vStream.DisposeOf;
     http.DisposeOf;
 end;
end;
Cevapla
#4
Teşekkürler..
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#5
Bu apinin ansi ve unicode olanı var ikisini de denediniz mi?
URLDownloadToFileA
URLDownloadToFileW
Ayakkabıyı sefaletten
Çok sonraları tanıdım
Öyle ufuklarda mı olurmuş Allah'ım
Giyer giyer koşardım
Toprağın dostluğundan
Oyuncaklar yaptım çamurdan
Tenimin rengini aldım topraktan
Sen bakma esmerliğim sonradan...





Cevapla
#6
Denemdim de.. mantik olarak ne farkı olabilir ki hocam.?
// Bilgi paylaştıkça çoğalır.. 

Cevapla
#7
Ansi kullanımda belirli karakterlerlerde sorun olabilir.
Mesela dosya yolunda özel bir karakter kullanılıyorsa.
Ayakkabıyı sefaletten
Çok sonraları tanıdım
Öyle ufuklarda mı olurmuş Allah'ım
Giyer giyer koşardım
Toprağın dostluğundan
Oyuncaklar yaptım çamurdan
Tenimin rengini aldım topraktan
Sen bakma esmerliğim sonradan...





Cevapla
#8
yok hocam. tamamen ing karakter seti. özel yada tr karakterler yok hiç..
// Bilgi paylaştıkça çoğalır.. 

Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Xmlmapper hatası hbulus 1 174 07-03-2024, Saat: 09:45
Son Yorum: RAD Coder
  Gmail Mail Gönderirken Connection Gracefuly Hatası COMMANDX 0 247 02-02-2024, Saat: 15:21
Son Yorum: COMMANDX
  PasLibVlc kurulum hatası Altıner 6 967 15-01-2024, Saat: 18:43
Son Yorum: Altıner
  Out of Memory hatası.. enigma 8 786 28-12-2023, Saat: 22:22
Son Yorum: vedat35
  Integer hatası Altıner 5 829 24-12-2023, Saat: 23:03
Son Yorum: mustafaozpinar



Konuyu Okuyanlar: 1 Ziyaretçi