1 den çok printerla çalışmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
ThE-yLmZ
Üye
Mesajlar: 28
Kayıt: 14 Eki 2005 04:59
İletişim:

1 den çok printerla çalışmak

Mesaj gönderen ThE-yLmZ »

Merhaba arkadaşlar;

2 gündür uğraşıyorum, 2 tane fiş yazıcısı var. ikisinede noktavuruşlu fiş yazıcısı. Printerları normal olarak yazdırıyorum. Sorunum şu, default printer değiştirmeden istediğim yazıcıya bilgi göndermek istiyorum. Yani projemde mutfak ve bardan ayrı ayrı fiş alınması gerekiyor. içecekleri bar yazıcısına, yiyecekleri mutfağa göndericek ama her zaman default u değiştirip çalıştırabiliyorum. Öteki türlü çalışmıyor. Yazıcıları ağ yazıcısı olarak tanımladım ve ikiside sınama sayfasını yazdırıyor, yazıcılarda sorun yok. Ne yaptıysam yapıyım hep default printer a gönderiyor.
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

gönderirken printer sectirmelisin. tabi bunun icin de printer listesini aldırman lazım. bunları şu şekilde yapabilirsin:

Kod: Tümünü seç

uses
  Printers, Shellapi;

procedure TForm1.Button1Click(Sender: TObject);
var
  Device: array[0..255] of Char;
  Driver: array[0..255] of Char;
  Port: array[0..255] of Char;
  S: string;
  hDeviceMode: THandle;
  documentname: string;
begin
  Printer.PrinterIndex := -1;  // select a printer, in this case default
  Printer.GetPrinter(Device, Driver, Port, hDeviceMode);
  S := Format('"%s" "%s" "%s"', [Device, Driver, Port]);
  documentname := 'c:\anydocument.doc';
  ShellExecute(Handle, 'printto', PChar(documentname), PChar(S), nil, SW_HIDE);
end;
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri »

s.a.
forma bi tane printdialog bileşeni koy
programdan onu execute et
yazıcıyı seç.
çıktını gönder.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
ThE-yLmZ
Üye
Mesajlar: 28
Kayıt: 14 Eki 2005 04:59
İletişim:

Mesaj gönderen ThE-yLmZ »

print dalogla yapamam çünkü program kendisi göndericek, printer seçtiricek kimse yok,,

@MicroChip bu bnde wardı ama hala default a gönderiyor. Başka bir yöntem yok mu?
Kullanıcı avatarı
MicroChip
Kıdemli Üye
Mesajlar: 1119
Kayıt: 02 Ağu 2003 01:02
Konum: İstanbul
İletişim:

Mesaj gönderen MicroChip »

Printer.PrinterIndex := -1; olursa default a gönderir başka durumlarda ilgili yazıcıya

saygılar...
Kafkas Kartalı Kabarday
Sitesi!= http://www.ahmetceylan.com
Resim
Cevapla