PrintQueue.UntilTimeOfDay Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan atau mengatur waktu terbaru, yang dinyatakan sebagai jumlah menit setelah Waktu Universal Terkoordinasi tengah malam (juga disebut Greenwich Mean Time [GMT]), bahwa printer akan mencetak pekerjaan.
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
Nilai Properti
Waktu printer tidak lagi tersedia, dinyatakan sebagai jumlah menit setelah tengah malam (UTC). Nilai maksimumnya adalah 1439. Ketika printer pertama kali diinstal dengan menggunakan Microsoft Windows Add Printer Wizard, printer default tersedia sepanjang waktu, dan properti ini mengembalikan 0 di semua zona waktu.
Contoh
Contoh berikut menunjukkan cara menggunakan properti ini untuk menentukan apakah printer tersedia saat ini.
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
Keterangan
Jika Anda tidak berada di zona waktu UTC, Anda harus menambahkan atau mengurangi kelipatan 60 untuk mengatur atau mendapatkan waktu yang benar untuk zona waktu Anda. Misalnya, jika Anda berada di Zona Waktu Pasifik Amerika Utara dan waktu musim panas tidak berlaku, maka waktu lokal Anda adalah 8 jam lebih awal dari UTC. Untuk mengatur UntilTimeOfDay ke jam 12 pagi di zona waktu Anda, Anda mengaturnya ke 8 pagi UTC, yaitu 480 (= 8 * 60). Anda juga harus ingat bahwa waktu bergulir ke nol setelah jam ke-24 (menit ke-1439). Untuk mengaturnya ke pukul 18.00 di zona waktu Anda, Anda mengaturnya ke pukul 02.00 UTC, yaitu 120 (= 2 * 60). Lihat TimeZonekelas , TimeSpan, dan DateTime untuk metode memanipulasi zona waktu yang bermanfaat.
Jika printer selalu tersedia, maka properti ini mengembalikan 0 di semua zona waktu.