Thema: Delphi alle Drucker netzweit

Einzelnen Beitrag anzeigen

fredi

Registriert seit: 6. Aug 2003
43 Beiträge
 
Delphi 5 Professional
 
#3

Re: alle Drucker netzweit

  Alt 11. Sep 2003, 10:08
danke für den Hinweis,
mit derfolgenden procedure bekomme zwar den Computername, auf dem der jeweilige Drucker darnhängt und freigegeben wurde, jedoch keinen Printernamen. Ich würde gerne mit dem ermittelten Printernamen die Printerconfiguration auslesen und in einem grid darstellen, geht das ?

fredi
Delphi-Quellcode:
procedure TMainForm.GetNetPrinters;
var
  dwResult : DWord;
  hEnum : DWord;
  anrStruct : array [1..512] of NETRESOURCE;
  dwCount : DWord;
  dwBufferSize : DWord;
  lIndex : LongInt;
begin
  try
    FillChar(anrStruct,SizeOf(anrStruct),0);
    anrStruct[1].lpRemoteName := PChar('CDNET');
    dwResult := WNetOpenEnum(RESOURCE_GLOBALNET,RESOURCETYPE_PRINT, 0, @anrStruct[1], hEnum);
    if dwResult = NO_ERROR then
    begin
      Memo1.Lines.Clear;
      dwBufferSize := SizeOf(anrStruct);
      dwCount := DWord(-1);
      dwResult := WNetEnumResource(hEnum, dwCount, @anrStruct[1],
        dwBufferSize);
      for lIndex := 1 to dwCount do
      begin
        Memo1.Lines.Add(anrStruct[lIndex].lpRemoteName);
      end;
    end;
  finally
    WNetCloseEnum(hEnum);
  end;
end;
[edit=Luckie]Delphi-Tags eingefügt. Bitte selber dran denken. Danke. Mfg, Luckie[/edit]
  Mit Zitat antworten Zitat