Proram Üst Versiyon

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Proram Üst Versiyon

Mesaj gönderen brs »

Selam,

Yaptığım projenin üst versiyonu varsa download yaparak indiriliyor, Databasede (ParamByName('ADI').AsString) alanım var üst versiyona verdiğim ad ile download edilsin istiyorum tamda sorunda burada başlıyor databasede (ADI) alanım olmasına rağmen
( 'FDQueryAyalar: Parameter 'ADI' not found'. Process Setup.exe (5252)) hatası alıyorum acaba gözümden kaça ne?




Kod: Tümünü seç

var
  Eski, Yeni: String;
  Indir: TMemoryStream;
begin
  try
    Form1.FDConnection.Connected := False;
    with Form1.FDQueryAyalar do
    begin
      Close;
      SQL.Clear;
      SQL.Add('Select * From Ayarlar Where VERSIYON=:VERSIYON');
      ParamByName('VERSIYON').AsString := '1';
      Prepared := True;
      Open;
      if IsEmpty then
      begin
        Indir := TMemoryStream.Create;
        FieldByName('INDIRMEADRESI').AsString;
        Indir.SaveToFile(Form3.MasaUstuYolu.Caption + '\' + ParamByName('ADI').Value);
        Indir.Free;
        Application.MessageBox('Download İşlemi Başarıyla Tamamlandı', 'Yeni Versiyon!', 0);
      end
      else
      begin
        Application.MessageBox('Yeni Versiyon Yok', 'Yeni Versiyon!', 0);
      end;
    end;
  except
  end;
end;
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Proram Üst Versiyon

Mesaj gönderen SimaWB »

Gözünüzden kaçan, FieldByName yerine ParamByName kullanmanız :wink:
There's no place like 127.0.0.1
Kullanıcı avatarı
brs
Üye
Mesajlar: 626
Kayıt: 04 Eki 2012 03:52

Re: Proram Üst Versiyon

Mesaj gönderen brs »

Hocam (FieldByName yerine ParamByName) ikisinide denedim değişen bir şey olmadı altaki gibi yapınca sorun çıkmıyor, benim ADI alanındaki 1.1.rar bilgisini almam lazım

Kod: Tümünü seç

Indir.SaveToFile(Form3.MasaUstuYolu.Caption+'\'+ParamByName('VERSIYON').AsString);
İşi bilen yardım eder, az bilen akıl verir, bilmeyen eleştirir, yapamayan ise çamur atar...
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Proram Üst Versiyon

Mesaj gönderen SimaWB »

Bu şekilde deneme yanılma yöntemiyle olmaz bu işler. ParamByName ve FieldByName nedir, ne ifade ederler önce bunu araştırmalısınız bence.

Verdiğiniz kodu siz yazmadınız sanırım. Sanırım diyorum çünkü

Kod: Tümünü seç

FieldByName('INDIRMEADRESI').AsString;
şeklinde boş(iş yapmayan) bir satır var orada :?: (İyimser düşünelim: bu foruma yazarken yanlış yazdınız :) ).
O satırdaki ifadeye bakılırsa almak istediğiniz indirme adresi sanırım orada gizli :)

Yine tahmin ederek yazıyorum:

Kod: Tümünü seç

Indir := TMemoryStream.
Indir.SaveToFile(Form3.MasaUstuYolu.Caption + '\' + FieldByName('INDIRMEADRESI').AsString;);
Indir.Free;
There's no place like 127.0.0.1
Cevapla