Re: Tester si l'imprimante est connectée ?
>>
> Oui, mais comment à partir de l'objet TPrinter dans Delphi je récupère le
> nom réseau de l'imprimante ? Y'a une propriété pour ça ?
>
Même réponse, avec un truc du style :
uses WinSpool;
var
size: DWord;
PrinterInfo2: PPrinterInfo2;
begin
Size := 0;
GetMem(PrinterInfo2, Size);
if not OpenPrinter(pchar(printer.Printers[i]), HPrinter, nil) then
erreur := 'openPrinter : ' + SysErrorMessage(GetLastError)
else
begin
Winspool.GetPrinter(HPrinter, 2, PrinterInfo2, Size, @Size);
ReAllocMem(PrinterInfo2, Size);
if not Winspool.GetPrinter(HPrinter, 2, PrinterInfo2, Size, @Size)
then
erreur := 'Erreur get : ' + SysErrorMessage(GetLastError)
else
begin
with PrinterInfo2^ do
begin
pServerName <== Nom du serveur
pShareName <= Nom du partage
==> donc chemin complet = '\\' + pServerName + '\' + pShareName;
end;
end;
end;
JP
|