PrintQueue.StartTimeOfDay Eigenschaft

Definition

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 Drucker einen Auftrag druckt.

public:
 virtual property int StartTimeOfDay { int get(); void set(int value); };
public virtual int StartTimeOfDay { get; set; }
member this.StartTimeOfDay : int with get, set
Public Overridable Property StartTimeOfDay As Integer

Eigenschaftswert

Die Tageszeit, zu der der Drucker zuerst verfügbar wird, ausgedrückt als Die Anzahl der Minuten nach Mitternacht (UTC). Der Maximalwert ist 1439. Wenn ein Drucker zum ersten Mal mithilfe des Assistenten zum Hinzufügen von Druckern Microsoft Windows installiert wird, wird der Drucker standardmäßig immer verfügbar sein, und diese Eigenschaft gibt 0 in allen Zeitzonen zurück.

Beispiele

Das folgende Beispiel zeigt, wie Sie diese Eigenschaft verwenden, um zu bestimmen, ob ein Drucker zurzeit verfügbar ist.

private: 
   static void ReportAvailabilityAtThisTime (System::String^% statusReport, System::Printing::PrintQueue^ pq) 
   {
      if (pq->StartTimeOfDay != pq->UntilTimeOfDay)
      {
         System::DateTime utcNow = DateTime::UtcNow;
         System::Int32 utcNowAsMinutesAfterMidnight = (utcNow.TimeOfDay.Hours * 60) + utcNow.TimeOfDay.Minutes;

         // If now is not within the range of available times . . .
         if (!((pq->StartTimeOfDay < utcNowAsMinutesAfterMidnight) && (utcNowAsMinutesAfterMidnight < pq->UntilTimeOfDay)))
         {
            statusReport = statusReport + " Is not available at this time of day. ";
         }
      }
   };
private static void ReportAvailabilityAtThisTime(ref String statusReport, PrintQueue pq)
{
    if (pq.StartTimeOfDay != pq.UntilTimeOfDay) // If the printer is not available 24 hours a 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 (!((pq.StartTimeOfDay < utcNowAsMinutesAfterMidnight) 
           &&
           (utcNowAsMinutesAfterMidnight < pq.UntilTimeOfDay)))
        {
            statusReport = statusReport + " Is not available at this time of day. ";
        }
    }
}
Private Shared Sub ReportAvailabilityAtThisTime(ByRef statusReport As String, ByVal pq As PrintQueue)
    If pq.StartTimeOfDay <> pq.UntilTimeOfDay Then ' If the printer is not available 24 hours a 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((pq.StartTimeOfDay < utcNowAsMinutesAfterMidnight) AndAlso (utcNowAsMinutesAfterMidnight < pq.UntilTimeOfDay)) Then
            statusReport = statusReport & " Is not available at this time of day. "
        End If
    End If
End Sub

Hinweise

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 festzulegen oder abzurufen. Wenn Sie sich beispielsweise in der Pazifischen Zeitzone nordamerikas befinden und die Sommerzeit nicht wirksam ist, liegt die Ortszeit 8 Stunden vor UTC. Um in Ihrer Zeitzone auf 12 Uhr festzulegen StartTimeOfDay , legen Sie sie auf 8 UHR UTC fest, was 480 (= 8 * 60) ist. Sie müssen auch daran denken, dass die Zeit nach 24 Stunden (d. r. nach der 1439. Minute) auf Null rollt. Um sie in Ihrer Zeitzone auf 16:00 Uhr festzulegen, legen Sie sie auf 2 UHR UTC fest, d. h. 120 (= 2 * 60). Weitere Informationen zu hilfreichen Methoden für die Bearbeitung von Zeitzonen finden Sie unter TimeZone, TimeSpanund DateTime Klassen.

Wenn der Drucker immer verfügbar ist, gibt diese Eigenschaft 0 in allen Zeitzonen zurück.

Gilt für:

Weitere Informationen