このTimeJobSubmitted
属性は、正しいタイム ゾーンの時刻を返すようには見えません。Windows で印刷キューを手動で確認すると、ジョブの時刻が正しいことがわかります。(例: 3:30 に送信された Job1 を表示);
問題は、 を使用してコードで印刷ジョブを解析するときにPrintJobInfoCollection
、正しいタイムゾーンを使用しているように見えないことTimeJobSubmitted
です。ウィンドウズ。(プリンターを右クリックし、[印刷中の内容を表示] をクリックして、Windows で印刷キューを表示します。
コードで印刷キューを調べる方法を次に示します。
LocalPrintServer server = new LocalPrintServer();
PrintQueue pq = server.GetPrintQueue(printerName);
if (pq != null)
{
pq.Refresh();
PrintJobInfoCollection jobs = pq.GetPrintJobInfoCollection();
foreach (PrintSystemJobInfo job in jobs)
{
string jobName = job.Name;
string jobStatus = job.JobStatus.ToString();
// Why is the next line 5 hours off of the correct time?
DateTime timeSubbited = job.TimeJobSubmitted;
DateTime currentTime = DateTime.Now;;
TimeSpan elapsed = currentTime - timeSubbited;
// double minutesPassed = timePassed.TotalMinutes;
}
}
c# で印刷ジョブを反復するときに正しい TimeJobSubmitted を取得するにはどうすればよいですか?