获取打印机当前状态
WIN7 64位操作系统上没问题
到了32位的XP 和 Server2003就不行了,是操作系统的原因还是32位的问题??
代码如下:
/// <summary>
/// 获取打印机的当前状态
/// </summary>
/// <param name="PrinterDevice"></param>
/// <returns></returns>
public PrinterStatus GetPrinterStat(string PrinterDevice)
{
PrinterStatus ret = 0;
string path = @"win32_printer.DeviceId='" + PrinterDevice + "'";
ManagementObject printer = new ManagementObject(path);
printer.Get();
ret = (PrinterStatus)Convert.ToInt32(printer.Properties["PrinterStatus"].Value);
return ret;
}
public enum PrinterStatus { 其他状态 = 1, 未知, 空闲, 正在打印, 预热, 停止打印, 打印中, 离线 }
报错截图: