excele aktar

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
yunusemre54
Üye
Mesajlar: 6
Kayıt: 16 Tem 2018 10:49

excele aktar

Mesaj gönderen yunusemre54 »

Merhabalar,cxgrid kullanıyorum ve verileri excele aktarmak için şu kodu kullanıyorum:

procedure TFormAna.ExcelAktarim(cxgridname: TcxGrid);
var
FFileName:string;
TTemp:array[0..max_Path] of char;
begin
GetTempPath(sizeof(TTemp), @TTemp);
Randomize;
FFileName:=TTemp+'Export_Excel'+inttostr(Random(100000))+'.xls';
DeleteFile(FFileName);
ExportGridToExcel(pchar(FFileName),cxgridname,true,true);
shellapi.ShellExecute(Application.Handle,'Open',pchar(FFileName),'','',SW_MAXIMIZE);
end;

excele aktarıyor.Fakat kod çalıştığında :
raised too many consecutive exception 'access violation ..
hatası veriyor.debugger beni cpu ekranına yonlendiriyor.

kodda bir eksik var sanırım.Bir şeyi free yapmadığımdan dolayı mı oluyor yada başka bir şey mi?
teşekkürler..
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: excele aktar

Mesaj gönderen ertank »

Merhaba, "debug run" şeklinde denediğinizde hangi satırda bu hatayı alıyorsunuz?
yunusemre54
Üye
Mesajlar: 6
Kayıt: 16 Tem 2018 10:49

Re: excele aktar

Mesaj gönderen yunusemre54 »

merhaba ,debug modunda ilerletriken kod satırları bitiyor sonr bu hatayı alıyorum.daha doğrusu f9 a basmadan almıyorum çünkü f8 ile tek tek ilerletiken bitmiyor,f9 a basınca sonu gelmiyor ve en son pause dtuşuna basınca beni cpu nun adım adım işlemesini gördümüz ekrana yönlendiriyor.
yani en son shellapi.ShellExecute(Application.Handle,'Open',pchar(FFileName),'','',SW_MAXIMIZE);
satırı çalışıyor excele aktarıyor ve end; satırına geliyor sonra ilerletince bi süre sonra bu hatayı veriyor.ardı ardına devam eden işlemler bitmedi hatası gibi
ertank
Kıdemli Üye
Mesajlar: 1651
Kayıt: 12 Eyl 2015 12:45

Re: excele aktar

Mesaj gönderen ertank »

yunusemre54 yazdı: 18 Eyl 2019 06:56 merhaba ,debug modunda ilerletriken kod satırları bitiyor sonr bu hatayı alıyorum.
Kaynak kod içinde her defasında farklı bir satır için F5 tuşu ile "break point" ekleyip yine debug modunda çalıştırarak kod akışının ilgili satıra geldiğinde otomatik durmasını sağlayabilirsiniz. Bu noktadan sonra yine F9 tuşu ile ilerleyebilirsiniz.

Örneğin; 2 numaralı satıra break point eklediğiniz zaman sorun çıkmadan kod işleyişi o noktada duruyor ise ve 3 numaralı satıra break point eklediğiniz zaman kod işleyişi durmadan hata alıyor iseniz sorun 2 numaralı satırdadır.
Cevapla