Getprinter - kapja meg a nyomtató portjának nevét

GetPrinter - kapja meg a nyomtató portjának nevét

Segítség a GetPrinter használatához. Van egy hívásom erre a funkcióra, és az érték helyesen lett visszaadva, azonban hozzáférési jogsértést generál.
Ezt teszem:

eljárás TForm1.Button1Kattintson (Feladó: TObject);
var pf: PRINTER_INFO_5;
h: Thandle;
("EPSON EPL-5900L Advanced", h, 0) Segítség a GetPrinter használatához. Van egy hívásom erre a funkcióra, és az érték helyesen lett visszaadva, azonban hozzáférési jogsértést generál.
Ezt teszem:

eljárás TForm1.Button1Kattintson (Feladó: TObject);
var pf: PRINTER_INFO_5;
h: Thandle;
x, d: dword;
kezdődik
d: = 0;
ha az OpenPrinter ("EPSON EPL-5900L Advanced", h, 0) megkezdődik
ha nem GetPrinter (h, 5,0,0, @ d), akkor kezd x: = d;
ha nem GetPrinter (h, 5, @ pf, x, @ d), akkor showmessage ("itsnogood") else
showmessage (pf.pPortName);
végén;
amikor kilép az eljárásból, hiba lép fel

Hálás lennék a segítségért.

És mégis - kérjük, a TPrinter.GetPrinter nem kínálja - nincs visszaadva a kikötő neve - ellenőrizte (a D5-en).

Ez ad nekem:
EPSON Stylus COLOR 680 az LPT1-en.

És nincs hiba
Ui És mi a PRINTER_INFO_5? Figyelmeztetett azonban a bal oldali elemekről.

Marserre - és elmagyarázza neked, hogy van egy sorod:

EPSON Stylus COLOR 680 az LPT1-en:

Mi az? tp.printers [i] mi?

És még több - tegyük fel, hogy igazad van. Szóval, mit tegyek, ha a vonalat külön-külön a nyomtatóport nevével kapcsolja? Ez nem hülye? Ie a "Printer Lalala Lpt: 11111" -ből kicsúszhatsz, és azt akarom, hogy a vonal nevét le kell vágnod a portról?

akonshin / fájlok / PrintLib.pas
Ez a kiegészítés a Printers egységhez. Hak, de még mindig hurrikán dolgozik.
Nézzétek meg, mindent meg kell enni.

A rip és ne, nézd meg a kódomat.

Marserre - vagy van valami a rendszerben vagy a delphi-ban, nem igaz, vagy téved. Közvetlenül a kódot használom, és csak a nyomtatók nevét kapom, és a portok és a nyomok nem szerepelnek.

Alex Konshin - ez a kikötő neve, amelyet átjutok a nyomtató fogantyúján. Fogadni fogom magam a fogantyút.

Marserre - és mégis - van az ötödik delphi.

Azt mondom, alaposan nézz
PortName: = THackPrinterDevice (oPrinter.Printers.Objects [idx]) .FPort;

Memória: 0,74 MB
Idő: 0.035 mp

Kapcsolódó cikkek