Comparteix a través de


PrintSystemJobInfo.StartTimeOfDay Propiedad

Definición

Obtiene la hora más temprana del día, expresada como el número de minutos después de medianoche de la hora universal coordinada (UTC) (también denominada hora del meridiano de Greenwich [GMT]), a la que la impresora comenzará a imprimir el trabajo de impresión.

public:
 property int StartTimeOfDay { int get(); };
public int StartTimeOfDay { get; }
member this.StartTimeOfDay : int
Public ReadOnly Property StartTimeOfDay As Integer

Valor de propiedad

Int32 que especifica la posible hora de inicio más temprana para el trabajo de impresión, expresada como el número de minutos después de la medianoche (hora UTC). El valor máximo es 1439.

Ejemplos

En el ejemplo siguiente se muestra cómo usar esta propiedad como parte del proceso de diagnóstico de un trabajo de impresión problemático.

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

Comentarios

Este valor se propaga a cada PrintSystemJobInfo objeto de la PrintQueue.StartTimeOfDay propiedad del hospedaje PrintQueue en el momento en que el trabajo entra en la cola. Si PrintQueue.StartTimeOfDay se cambia, se cambia cualquier PrintSystemJobInfo.StartTimeOfDay valor anterior PrintQueue.StartTimeOfDay que se cambia al valor de PrintQueue.StartTimeOfDay.

Después de agregar el trabajo a la cola, se puede proporcionar un nuevo StartTimeOfDay valor a través de la interfaz de usuario (UI) de Microsoft Windows, siempre que no sea anterior a PrintQueue.StartTimeOfDay.

Si no está en la zona horaria UTC, debe agregar o restar múltiplos de 60 para obtener la hora correcta para la zona horaria. Por ejemplo, si se encuentra en la zona horaria del Pacífico de Norteamérica y el horario de verano no está en vigor, la hora local es de 8 horas antes de la hora UTC. Si StartTimeOfDay devuelve 960, significa 16:00 (14:00 p.m.) en UTC (porque 960/60 = 16). Para convertir esto a la hora del Pacífico, debe restar 480 (= 8 * 60) minutos.

También debe recordar que el tiempo pasa a cero después de 24 horas (es decir, después del minuto 1439). Si StartTimeOfDay devuelve 120, significa 2:00 a.m. en UTC. Para convertir esto a la hora del Pacífico, debe restar 480 minutos, lo que da como resultado -360. Para obtener un valor positivo que tenga significado, agregue el número negativo al total de minutos en un día, 1440, lo que da como resultado un valor final de 1080 (6:00 PM) Hora del Pacífico.

Consulte TimeZone, TimeSpany DateTime para ver los métodos que ayudan a realizar ajustes de zona horaria.

Si la impresora siempre está disponible, esta propiedad devuelve 0 en todas las zonas horarias.

Se aplica a

Consulte también