を開始するための素晴らしい記事/サンプルですこのためにWMIを使用します。それはWin32_PrintJobを含め、いくつかのprinting-related classes用意されています。
これはテストされていないですが、このようなものは、あなたが始める必要があります。
SelectQuery query = new SelectQuery("Win32_PrintJob");
using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(query))
using (ManagementObjectCollection printJobs = searcher.Get())
foreach (ManagementObject printJob in printJobs)
{
// The format of the Win32_PrintJob.Name property is "PrinterName,JobNumber"
string name = (string) printJob["Name"];
string[] nameParts = name.Split(',');
string printerName = nameParts[0];
string jobNumber = nameParts[1];
string document = (string) printJob["Document"];
string jobStatus = (string) printJob["JobStatus"];
// Process job properties...
}
System.Printingは、.NET 2.0のためにカットをしなかったし、おそらく.NET 3.0のカットを行っているべきではありません。本当に責任があるわけではなく、基盤となるWindows APIは強くない。要件を決定します。 –