Das Abfragen der Druckereigenschaften funktioniert nach meinem Kenntnisstand nur, wenn vorher das Printerhandle initialisiert, sprich: ein Druckauftrag mit Printer.BeginDoc eingeleitet wird. Anschließend kann man über das
Handle und GetDeviceCaps Informationen (DPI, Papiergröße, etc. )zum Drucker abfragen. So mach ich das jedenfalls
Die von Dir gewünschten Informationen sind (soweit ich weiß) nicht verfügbar; wenn der Drucker offline ist, wird das
Handle nicht gültig sein; wenn der Drucker kein Papier hat, wird er nicht online sein (so ist das jedenfalls bei meinen Druckern).