PrintQueue.UntilTimeOfDay Propriété

Définition

Obtient ou définit l’heure la plus récente, exprimée sous la forme du nombre de minutes après minuit temps universel coordonné (UTC) (également appelée Heure moyenne de Greenwich [GMT]), que l’imprimante imprime un travail.

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

Valeur de propriété

Heure du jour où l’imprimante n’est plus disponible, exprimée sous la forme du nombre de minutes après minuit (UTC). La valeur maximale est 1439. Lorsqu’une imprimante est installée pour la première fois à l’aide de l’Assistant Ajout d’imprimante Microsoft Windows, l’imprimante est par défaut disponible à tout moment et cette propriété retourne 0 dans tous les fuseaux horaires.

Exemples

L’exemple suivant montre comment utiliser cette propriété pour déterminer si une imprimante est disponible à l’heure actuelle.

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

Remarques

Si vous n’êtes pas dans le fuseau horaire UTC, vous devez ajouter ou soustraire plusieurs multiples de 60 pour définir ou obtenir l’heure correcte pour votre fuseau horaire. Par exemple, si vous êtes dans le fuseau horaire pacifique de l’Amérique du Nord et que l’heure d’été n’est pas en vigueur, votre heure locale est de 8 heures plus tôt que l’heure UTC. Pour définir UntilTimeOfDay la valeur 12h dans votre fuseau horaire, vous l’avez définie sur 8 h UTC, soit 480 (= 8 * 60). Vous devez également vous rappeler que le temps passe à zéro après la 24ème heure (la 1439ème minute). Pour la définir sur 6 pm dans votre fuseau horaire, vous la définissez sur 2 AM UTC, soit 120 (= 2 * 60). Consultez TimeZone, TimeSpanet DateTime classes pour connaître les méthodes de manipulation de fuseau horaire utiles.

Si l’imprimante est toujours disponible, cette propriété retourne 0 dans tous les fuseaux horaires.

S’applique à

Voir aussi