PrintQueue.StartTimeOfDay 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定一天中印表機開始列印工作的最早時間,以午夜 Coordinated Universal Time (UTC,亦稱為格林威治標準時間 (Greenwich Mean Time,GMT)) 之後經過的分鐘數表示。
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
屬性值
一天中印表機可用的最早時間,以午夜 (UTC) 之後經過的分鐘數表示。 最大值為 1439。 第一次使用 Microsoft Windows 新增印表機精靈安裝印表機時,列印機預設為隨時可用,而且此屬性會在所有時區傳回 0。
範例
下列範例示範如何使用這個屬性來判斷印表機目前是否可用。
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
備註
如果您不在UTC時區,則必須新增或減去60的倍數,才能設定或取得時區的正確時間。 例如,如果您位於 北美洲 的太平洋時區,且日光節約時間並未生效,則當地時間比 UTC 早 8 小時。 若要在 StartTimeOfDay 時區設定為上午 12 點,您可以將它設定為上午 8 點 UTC,也就是 480 (= 8 * 60) 。 您也必須記住,時間會在24小時後變換為零, (亦然;在 1439 分鐘後) 。 若要將時區設定為下午 6 點,請將它設定為上午 2 點 UTC,也就是 120 (= 2 * 60) 。 如需實用的時區操作方法,請參閱 TimeZone、 TimeSpan和 DateTime 類別。
如果印表機一律可用,則此屬性會在所有時區傳回0。