C获取打印机状态API函数详解
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;using System.Diagnostics;using System.Drawing.Printing;namespace testprinter2{publicpartialclassForm1 : Form { #region 预定义类型 [FlagsAttribute]publicenumPrinterEnumFlags { PRINTER_ENUM_DEFAULT = 0 PRINTER_ENUM_LOCAL = 0 PRINTER_ENUM_CONNECTIONS = 0 PRINTER_ENUM_FAVORITE = 0 PRINTER_ENUM_NAME = 0 PRINTER_ENUM_REMOTE = 0 PRINTER_ENUM_SHARED = 0 PRINTER_ENUM_NETWORK = 0 PRINTER_ENUM_EXPAND = 0 PRINTER_ENUM_CONTAINER = 0 PRINTER_ENUM_ICONMASK = 0x00ff0000, PRINTER_ENUM_ICON1 = 0 PRINTER_ENUM_ICON2 = 0 PRINTER_ENUM_ICON3 = 0 PRINTER_ENUM_ICON4 = 0 PRINTER_ENUM_ICON5 = 0 PRINTER_ENUM_ICON6 = 0 PRINTER_ENUM_ICON7 = 0 PRINTER_ENUM_ICON8 = 0 PRINTER_ENUM_HIDE = 0 } [StructLayout(LayoutKind.Sequential)]publicstructPRINTER_INFO_2 { [MarshalAs(UnmanagedType.LPTStr)]publicstring pServerName; [MarshalAs(UnmanagedType.LPTStr)]publicstring pPrinterName; [MarshalAs(UnmanagedType.LPTStr)]publicstring pShareName; [MarshalAs(UnmanagedType.LPTStr)]publicstring pPortName; [MarshalAs(UnmanagedType.LPTStr)]publicstring pDriverName; [MarshalAs(UnmanagedType.LPTStr)]publicstring pComment; [MarshalAs(UnmanagedType.LPTStr)]publicstring pLocation;publicIntPtr pDevMode; [MarshalAs(UnmanagedType.LPTStr)]publicstring pSepFile; [MarshalAs(Un