Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi ile yazıcı tanıtmak
#1
Merhaba,
Butona bastığımda belirlediğim ve sistem üzerinde driveri bulunan bir yazıcıyı windows'a tanıtmak istiyorum, ve tanıtırken de hangi portu kullanacağını da belirtmek istiyorum
Bunu nasıl yapabilirim?
Cevapla
#2
Bilgisayar başında değilim. Deneyip yazamadım. 

Bu linkteki kodu deneyip burada sonucu bildirirsen sevinirim. (expert exchange linki "How to add Printer using Delphi Add Printer Function  " )

not. tabii çalışıyor olan kod örneği ile..   Wink
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#3
ben bunu uygulamıştım ama her nedense hiçbir tepkime vermiyor. hata da vermiyor
Cevapla
#4
(13-03-2019, Saat: 08:17)ermanispir@gmail.com Adlı Kullanıcıdan Alıntı: Merhaba,
Butona bastığımda belirlediğim ve sistem üzerinde driveri bulunan bir yazıcıyı windows'a tanıtmak istiyorum, ve tanıtırken de hangi portu kullanacağını da belirtmek istiyorum
Bunu nasıl yapabilirim?

Merhabalar,

Bu link'lere de bakın iserseniz.

1. https://support.microsoft.com/en-ca/help...in-windows
2. https://theroadtodelphi.com/2011/11/05/w...-printing/

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#5
Projenizi Admin olarak çalıştırmayı deneyin.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla
#6
Bilgisayar başına geçtim denedim. 
Hata kodu 1798 veriyordu, bunun Türkçesi için SysErrorMessage kullandım dedi ki Print Processor ( Yazırma İşlemcisi ) bulunamadı...

Dolayısıyla eksik parametreyi 'WinPrint' ile tamamlayınca çalıştı....

Sonuç :
Uses WinSpool;

function AddAPrinter(PrinterName, PortName, DriverName, PrintProcessor: string): boolean;
var
 pName: PChar;
 Level: DWORD;
 pPrinter: PPrinterInfo2;
begin
 pName := nil;
 Level := 2;

 New(pPrinter);
 pPrinter^.pServerName         := nil;
 pPrinter^.pShareName          := nil;
 pPrinter^.pComment            := nil;
 pPrinter^.pLocation           := nil;
 pPrinter^.pDevMode            := nil;
 pPrinter^.pSepFile            := nil;
 pPrinter^.pDatatype           := nil;
 pPrinter^.pParameters         := nil;
 pPrinter^.pSecurityDescriptor := nil;
 pPrinter^.Attributes          := 0;
 pPrinter^.Priority            := 0;
 pPrinter^.DefaultPriority     := 0;
 pPrinter^.StartTime           := 0;
 pPrinter^.UntilTime           := 0;
 pPrinter^.Status              := 0;
 pPrinter^.cJobs               := 0;
 pPrinter^.AveragePPM          :=0;

 pPrinter^.pPrinterName        := PCHAR(PrinterName);
 pPrinter^.pPortName           := PCHAR(PortName);
 pPrinter^.pDriverName         := PCHAR(DriverName);
 pPrinter^.pPrintProcessor     := PCHAR(PrintProcessor);

 if AddPrinter(pName, Level, pPrinter) <> 0 then
 begin
   Result := true;
 end
 else begin
   ShowMessage( SysErrorMessage(GetlastError) );
   Result := false;
 end;
end;

Kullanım Şekli.
procedure TForm1.BitBtn1Click(Sender: TObject);
var
myPtrName, myPtrPort, myPtrDriver, myPtrProcessor : String;
begin
myPtrName      := 'Canon MF8200C Series';
myPtrPort      := 'LPT1:';
myPtrDriver    := 'Canon MF8200C Series V4';
myPtrProcessor := 'WinPrint';

if AddAPrinter( myPtrName, myPtrPort,  MyPtrDriver, myPtrProcessor ) then ShowMessage( 'Başarılı...' );
end;
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif


Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi içerisinden SQL çalıştırma problemi (Heterogeneous queries hatası) adelphiforumz 4 125 Dün, Saat: 20:25
Son Yorum: adelphiforumz
  Delphi XE6'da oluşan XML XE'de farklı. WSDL Wizard hata yapar mı ? boreas 3 142 19-03-2019, Saat: 20:17
Son Yorum: maxpaynen
  Delphi İstatistik dkadir 4 205 27-02-2019, Saat: 12:49
Son Yorum: hi_selamlar
  Delphi'de Panelin görüntüsünü saydam bir şekilde png olarak nasıl kaydedebilirim? Cyb3r 8 327 27-02-2019, Saat: 09:30
Son Yorum: Cyb3r
  delphi guncelleme cexx 7 330 26-02-2019, Saat: 08:44
Son Yorum: yhackup



Konuyu Okuyanlar: 1 Ziyaretçi