fastreport da direk printer seçimi win 98 hata

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

fastreport da direk printer seçimi win 98 hata

Mesaj gönderen skyking »

arkadaslar google alt ust etim

xp de printer seçimini eksiksiz yapıyor ama
win98 de ilgili printeri secmiyor hep default geliyor
sorun nedir?

Kod: Tümünü seç

    printer:=tprinter.create;
    prt.items.Assign(printer.printers);

ve seçim

frReport1.PrintOptions.Printer:=prt.Items.Strings[prt.Itemindex];
bu kod win 98 yemiyor nedeni nedir hocalarım?
En son skyking tarafından 04 Oca 2006 03:07 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Uses'a Printers uniti eklendikten sonra

Kod: Tümünü seç

  prt.Items.Assign(printer.printers);
yazman yeterli. Bu printer listesini listbox'da görüyorsun değil mi ? Hata nerede veriyor.

- frReport1'e printer ataması yaparken mi yoksa daha önce printer listesini alırken mi ?

Not : prt bir TListBox oluyor değil mi ?
Resim
Resim ....Resim
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

söylemiştim hocam
listeden ilgili printer adını seçince
win98 de listeden seçtiğim printeri secmiyor deli oldum ama
xpde listeden sectiğim print i seciyor bu nasıl bir iştir yaa..!
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

sorun suymus: listeyi cekince prt.items listelediğimizde xpde printerin nerde oldugunu göstermiyor direk printer adı yazıyor
ama win98 de printer adı ve nerde oldugunu yazıyor ( on \\server on \\LPT:1 gibi) fastreporta ise sadece printerin adı geldigi için eslestirmede sorun cıkıyor ve dolaysıyla ilgili printeri secmiyordu..!
bilmem anlatabildim mi?

Kod: Tümünü seç


bul:=pos('on \\',prt.Items.Strings[prt.Itemindex]);
if bul>0 then
frxReport1.PrintOptions.Printer:=copy(prt.Items.Strings[prt.Itemindex],1,bul-1)
else
frxReport1.PrintOptions.Printer:=prt.Items.Strings[prt.Itemindex];
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Lazım olduğunda bunu "on \\" şeklinde değil de "on LPT1"'i de değerlendirerek her iksini de içine alacak şekilde yapalım, sağlam olsun.. :o

- Tebrikler...
Resim
Resim ....Resim
Kullanıcı avatarı
skyking
Üye
Mesajlar: 136
Kayıt: 09 Kas 2005 12:52
Konum: Antalya

Mesaj gönderen skyking »

ilk basta network printerleri için yapmıstım..!

en son kodu gönderiyorum

Kod: Tümünü seç

bul:=pos('on ',prt.Items.Strings[prt.Itemindex]);

if bul>0 then
frxReport1.PrintOptions.Printer:=copy(prt.Items.Strings[prt.Itemindex],1,bul-2)
else
frxReport1.PrintOptions.Printer:=prt.Items.Strings[prt.Itemindex];
[/code]
Cevapla