NetScheduleJobAdd-Funktion (lmat.h)
[NetScheduleJobAdd ist ab Windows 8 nicht mehr verfügbar. Verwenden Sie stattdessen die Taskplaner 2.0-Schnittstellen.
]
Die NetScheduleJobAdd-Funktion übermittelt einen Auftrag, der zu einer bestimmten späteren Uhrzeit und einem bestimmten Datum ausgeführt werden soll. Diese Funktion erfordert, dass der Zeitplandienst auf dem Computer gestartet wird, an den der Auftrag übermittelt wird.
Syntax
NET_API_STATUS NET_API_FUNCTION NetScheduleJobAdd(
[in, optional] LPCWSTR Servername,
[in] LPBYTE Buffer,
[out] LPDWORD JobId
);
Parameter
[in, optional] Servername
Ein Zeiger auf eine konstante Zeichenfolge, die den DNS- oder NetBIOS-Namen des Remoteservers angibt, auf dem die Funktion ausgeführt werden soll. Wenn dieser Parameter NULL ist, wird der lokale Computer verwendet.
[in] Buffer
Ein Zeiger auf eine AT_INFO Struktur, die den zu übermittelnden Auftrag beschreibt. Weitere Informationen zum Planen von Aufträgen mit unterschiedlichen Auftragseigenschaften finden Sie im folgenden Abschnitt hinweise und Netzwerkverwaltungsfunktionspuffer.
[out] JobId
Ein Zeiger, der einen Auftragsbezeichner für den neu übermittelten Auftrag empfängt. Dieser Eintrag ist nur gültig, wenn die Funktion erfolgreich zurückgegeben wird.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert NERR_Success.
Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Systemfehlercode. Eine Liste der Fehlercodes finden Sie unter Systemfehlercodes.
Hinweise
Normalerweise können nur Mitglieder der lokalen Administratorgruppe auf dem Computer, auf dem der Zeitplanauftrag hinzugefügt wird, diese Funktion erfolgreich ausführen. Wenn der Servername, der in der Zeichenfolge übergeben wird, auf die der Servername-Parameter verweist, ein Remoteserver ist, können nur Mitglieder der lokalen Gruppe Administratoren auf dem Remoteserver diese Funktion erfolgreich ausführen.
Wenn der folgende Registrierungswert über das am wenigsten signifikante Bit festgelegt ist (z. B. 0x00000001), können Benutzer, die zur Gruppe Serveroperatoren gehören, diese Funktion ebenfalls erfolgreich ausführen.
HKLM\System\CurrentControlSet\Control\Lsa\SubmitControl
Im Folgenden finden Sie Beispiele für das Planen von Aufträgen mit verschiedenen Eigenschaften, die von der NetScheduleJobAdd-Funktion unterstützt werden.
So planen Sie einen Auftrag, der einmal ausgeführt wird:
- Legen Sie das DaysOfMonth-Element der AT_INFO-Struktur auf 0 (null) fest.
- Legen Sie das DaysOfWeek-Element der AT_INFO-Struktur auf Null fest.
- Legen Sie den JobTime-Member der AT_INFO-Struktur auf den Zeitpunkt fest, zu dem der Auftrag ausgeführt werden soll.
So planen und löschen Sie einen Auftrag, der mehrmals ausgeführt wird:
- Legen Sie die entsprechenden Bits im DaysOfMonth-Element der AT_INFO-Struktur oder fest.
- Legen Sie die entsprechenden Bits im DaysOfWeek-Element der AT_INFO-Struktur fest.
- Legen Sie den JobTime-Member der AT_INFO-Struktur auf den Zeitpunkt fest, zu dem der Auftrag ausgeführt werden soll.
So planen Sie einen Auftrag, der regelmäßig ausgeführt wird:
- Legen Sie die entsprechenden Bits im DaysOfMonth-Element der AT_INFO-Struktur oder fest.
- Legen Sie die entsprechenden Bits im DaysOfWeek-Element der AT_INFO-Struktur fest.
- Legen Sie den JobTime-Member der AT_INFO-Struktur auf den Zeitpunkt fest, zu dem der Auftrag ausgeführt werden soll.
- Legen Sie das JOB_RUN_PERIODICALLY des Auftragsübermittlungsflags im Flags-Element der AT_INFO-Struktur fest.
Eine Beschreibung der Bitmasken daysOfWeek, DaysOfMonth und der Auftragseigenschaft finden Sie in der AT_INFO-Struktur.
Unter Windows 2000 wurden der frühere AT-Dienst und der Aufgabenplaner kombiniert. Der Taskplaner-Dienst war nur minutengenau. Daher verwendet die NetScheduleJobAdd-Funktion nur Stunden und Minuten, die im JobTime-Member der AT_INFO-Struktur angegeben sind, wenn die Ausführung eines Auftrags geplant ist.
Ab Windows Vista wurde die Genauigkeit für den Aufgabenplaner auf die Sekunde erhöht. Daher verwendet die NetScheduleJobAdd-Funktion nur die Stunden, Minuten und Sekunden, die im JobTime-Member der AT_INFO-Struktur angegeben sind, wenn die Ausführung eines Auftrags geplant ist.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | lmat.h (include Lmat.h) |
Bibliothek | Netapi32.lib |
DLL | Netapi32.dll |