PrintSystemJobInfo.StartTimeOfDay Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die früheste Tageszeit ab, ausgedrückt als die Anzahl der Minuten nach Mitternacht Koordinierte Weltzeit (UTC) (auch Als Greenwich Mean Time [GMT]bezeichnet), dass der Druckauftrag mit dem Drucken beginnen kann.
public:
property int StartTimeOfDay { int get(); };
public int StartTimeOfDay { get; }
member this.StartTimeOfDay : int
Public ReadOnly Property StartTimeOfDay As Integer
Eigenschaftswert
Eine Int32 Angabe der frühesten möglichen Startzeit für den Druckauftrag, ausgedrückt als Die Anzahl der Minuten nach Mitternacht (UTC). Der Maximalwert ist 1439.
Beispiele
Das folgende Beispiel zeigt, wie Sie diese Eigenschaft als Teil des Prozesses der Diagnose eines problematischen Druckauftrags verwenden.
static Boolean ReportAvailabilityAtThisTime (PrintSystemJobInfo^ theJob)
{
Boolean available = true;
if (theJob->StartTimeOfDay != theJob->UntilTimeOfDay)
{
DateTime utcNow = DateTime::UtcNow;
Int32 utcNowAsMinutesAfterMidnight = (utcNow.TimeOfDay.Hours * 60) + utcNow.TimeOfDay.Minutes;
// If "now" is not within the range of available times . . .
if (!((theJob->StartTimeOfDay < utcNowAsMinutesAfterMidnight) && (utcNowAsMinutesAfterMidnight < theJob->UntilTimeOfDay)))
{
available = false;
}
}
return available;
}
private static Boolean ReportAvailabilityAtThisTime(PrintSystemJobInfo theJob)
{
Boolean available = true;
if (theJob.StartTimeOfDay != theJob.UntilTimeOfDay) // If the job cannot be printed at all times of day
{
DateTime utcNow = DateTime.UtcNow;
Int32 utcNowAsMinutesAfterMidnight = (utcNow.TimeOfDay.Hours * 60) + utcNow.TimeOfDay.Minutes;
// If "now" is not within the range of available times . . .
if (!((theJob.StartTimeOfDay < utcNowAsMinutesAfterMidnight)
&&
(utcNowAsMinutesAfterMidnight < theJob.UntilTimeOfDay)))
{
available = false;
}
}
return available;
}//end ReportAvailabilityAtThisTime
Private Shared Function ReportAvailabilityAtThisTime(ByVal theJob As PrintSystemJobInfo) As Boolean
Dim available As Boolean = True
If theJob.StartTimeOfDay <> theJob.UntilTimeOfDay Then ' If the job cannot be printed at all times of day
Dim utcNow As Date = Date.UtcNow
Dim utcNowAsMinutesAfterMidnight As Int32 = (utcNow.TimeOfDay.Hours * 60) + utcNow.TimeOfDay.Minutes
' If "now" is not within the range of available times . . .
If Not((theJob.StartTimeOfDay < utcNowAsMinutesAfterMidnight) AndAlso (utcNowAsMinutesAfterMidnight < theJob.UntilTimeOfDay)) Then
available = False
End If
End If
Return available
End Function 'end ReportAvailabilityAtThisTime
Hinweise
Dieser Wert wird an jedes PrintSystemJobInfo Objekt aus der PrintQueue.StartTimeOfDay Eigenschaft des Hostings PrintQueue weitergegeben, wenn der Auftrag die Warteschlange eingibt. Wenn PrintQueue.StartTimeOfDay geändert wird, wird ein PrintSystemJobInfo.StartTimeOfDay früherer Wert als PrintQueue.StartTimeOfDay der Wert von PrintQueue.StartTimeOfDay.
Nachdem der Auftrag der Warteschlange hinzugefügt wurde, kann er über die Microsoft Windows-Benutzeroberfläche (UI) einen neuen StartTimeOfDay Wert erhalten, vorausgesetzt, er ist nicht früher als PrintQueue.StartTimeOfDay.
Wenn Sie sich nicht in der UTC-Zeitzone befinden, müssen Sie Vielfache von 60 addieren oder subtrahieren, um die richtige Zeit für Ihre Zeitzone zu erhalten. Wenn Sie sich beispielsweise in der Pazifischen Zeitzone nordamerikas befinden und die Sommerzeit nicht wirksam ist, liegt die Ortszeit 8 Stunden vor UTC. Wenn StartTimeOfDay 960 zurückgegeben wird, bedeutet dies 16:00 (14:00) in UTC (da 960/60 = 16). Um dies in die Pazifikzeit zu konvertieren, müssen Sie 480 (= 8 * 60) Minuten subtrahieren.
Sie müssen auch daran denken, dass die Zeit nach 24 Stunden (d. r. nach der 1439. Minute) auf Null rollt. Wenn StartTimeOfDay 120 zurückgegeben wird, bedeutet dies 2:00 Uhr in UTC. Um dies in die Pazifikzeit zu konvertieren, müssen Sie 480 Minuten subtrahieren, was zu -360 führt. Um einen positiven Wert zu erhalten, der Bedeutung hat, addieren Sie die negative Zahl zu den Gesamtminuten in einem Tag, 1440, was zu einem Endwert von 1080 (6:00 Pm) Pacific Time führt.
Weitere Informationen finden Sie unter TimeZone, TimeSpanund DateTime für Methoden, mit denen Sie Zeitzonenanpassungen vornehmen können.
Wenn der Drucker immer verfügbar ist, gibt diese Eigenschaft 0 in allen Zeitzonen zurück.