다음을 통해 공유


PrintSystemJobInfo.UntilTimeOfDay 속성

정의

GMT(그리니치 표준시)라고도 하는 UTC(협정 세계시) 자정 이후의 시간(분)으로 표현된, 하루 중에 인쇄 작업의 인쇄를 시작할 수 있는 가장 늦은 시간을 가져옵니다.

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

속성 값

UTC(협정 세계시) 자정 이후의 시간(분)으로 표현된, 하루 중에 작업을 인쇄할 수 있는 가장 늦은 시간을 지정하는 Int32입니다. 최대값은 1439입니다.

예제

다음 예제에는 인쇄 작업 문제를 진단 하는 과정의 일환으로이 속성을 사용 하는 방법을 보여 줍니다.

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

설명

이 값이 각각에 전파 PrintSystemJobInfo 에서 개체를 PrintQueue.UntilTimeOfDay 호스트 하는 속성 PrintQueue 시 작업을 큐에 들어갑니다. 하는 경우 PrintQueue.UntilTimeOfDay 변경 되 면 다음 모든 PrintSystemJobInfo.UntilTimeOfDay 값 보다 이후인 PrintQueue.UntilTimeOfDay 의 값으로 변경 됩니다 PrintQueue.UntilTimeOfDay합니다.

작업이 큐에 추가되면 이후가 아닌 PrintQueue.UntilTimeOfDay경우 Microsoft Windows UI(사용자 인터페이스)를 통해 새 UntilTimeOfDay 값을 부여할 수 있습니다.

없으면 UTC 표준 시간대에서를 추가 하거나 뺄 시간을 표준 시간대에 대 한 올바른 시간 60의 배수로 청구 해야 합니다. 예를 들어, North America의 태평양 표준시 시간대 및 일광 절약 시간제에가 없는 경우 효과 현지 시간 UTC 보다 8 시간 됩니다. 경우 UntilTimeOfDay 960 16:00 (오후 4 시)을 의미 하는 반환 (때문에 960/60 = 16). 이 값을 태평양 표준시로 변환 하려면 (8 * 60 =) 480 빼야 분입니다.

또한 해야 시간이 24 시간 후에 0으로 롤오버 하는 (즉; 1439 분 후). 경우 UntilTimeOfDay 120 2:00 AM utc에서 의미를 반환 합니다. 변환할이 태평양 표준시, 빼야 480 분-360 결과입니다. 의미가 있는 양수 값을 가져오려면 음수가 1440 1080 (오후 6시) 태평양 표준시의 최종 값을 하루에 총 분을 추가 합니다.

참조 TimeZone, TimeSpan, 및 DateTime 시간대 조정 하는 데 도움이 되는 방법에 대 한 합니다.

프린터를 사용할 수 항상이 속성 모든 표준 시간대에서 0을 반환 합니다.

적용 대상

추가 정보