Freigeben über


ChangeIdleRoutine

Gilt für: Outlook 2013 | Outlook 2016

Ändert einige oder alle Merkmale einer FNIDLE-basierten Leerlaufroutine.

Wert Beschreibung
Headerdatei
Mapiutil.h
Implementiert von:
MAPI
Aufgerufen von:
Clientanwendungen und Dienstanbieter
VOID ChangeIdleRoutine(
  FTG ftg,
  PFNIDLE pfnIdle,
  LPVOID pvIdleParam,
  short priIdle,
  ULONG csecIdle,
  USHORT iroIdle,
  USHORT ircIdle
);

Parameter

Ftg

[in] Funktionstag, das die Leerlaufroutine identifiziert.

pfnIdle

[in] Zeiger auf die Leerlaufroutine.

pvIdleParam

[in] Zeiger auf einen neuen Speicherblock, den die aufrufende Implementierung für die Leerlaufroutine zuweist.

priIdle

[in] Wert, der eine neue Priorität für die Leerlaufroutine darstellt. Mögliche Prioritäten für implementierungsdefinierte Routinen sind größer oder kleiner als null, aber nicht null. Der Wert 0 (null) ist für ein Benutzerereignis wie einen Mausklick oder eine WM_PAINT Nachricht reserviert. Werte größer als 0 (null) stellen Prioritäten für Hintergrundaufgaben dar, die eine höhere Priorität als Benutzerereignisse haben und als Teil der standardmäßigen Windows-Nachrichtenpumpe-Schleife verteilt werden. Werte kleiner als 0 (null) stellen Prioritäten für Aufgaben im Leerlauf dar, die nur während der Leerlaufzeit der Nachrichtenpumpe ausgeführt werden. Beispiele für Prioritäten sind: 1 für die Übermittlung im Vordergrund, 1 für das Einfügen von Power-Edit-Zeichen und 3 für das Herunterladen neuer Nachrichten.

csecIdle

[in] Eine neue Zeit in hundertstel Sekunden, die auf die Leerlaufroutine angewendet werden soll. Die Bedeutung des Anfangszeitwerts variiert je nachdem, was im iroIdle-Parameter übergeben wird. Dies kann folgendes sein:

  • Der minimale Zeitraum der Benutzerinaktivität, der verstreichen muss, bevor die MAPI-Idle-Engine die Idle-Routine zum ersten Mal aufruft, wenn das FIROWAIT-Flag in iroIdle festgelegt ist. Nach Ablauf dieser Zeit kann die Leerlauf-Engine die Leerlaufroutine so oft wie nötig aufrufen.

  • Das minimale Intervall zwischen Aufrufen der Leerlaufroutine, wenn das FIROINTERVAL-Flag in iroIdle festgelegt ist.

iroIdle

[in] Bitmaske von Flags, die neue Optionen zum Aufrufen der Leerlaufroutine angeben. Es muss genau eines der folgenden Flags festgelegt werden:

  • FIROINTERVAL: Die vom csecIdle-Parameter angegebene Zeit ist das minimale Intervall zwischen aufeinanderfolgenden Aufrufen der Leerlaufroutine.

  • FIROONCEONLY: Veraltet. Nicht verwenden.

  • FIROPERBLOCK: Veraltet. Nicht verwenden.

  • FIROWAIT: Die vom csecIdle-Parameter angegebene Zeit ist der mindeste Zeitraum der Benutzerinaktivierung, die verstreichen muss, bevor die MAPI-Idle-Engine die Leerlaufroutine zum ersten Mal aufruft. Nach Ablauf dieser Zeit kann die Leerlauf-Engine die Leerlaufroutine so oft wie nötig aufrufen.

ircIdle

[in] Bitmaske von Flags, die verwendet werden, um die Änderungen anzugeben, die an der Leerlaufroutine vorgenommen werden sollen. Die folgenden Flags können in beliebiger Kombination festgelegt werden:

  • FIRCCSEC: Eine Änderung der Zeit, die der Leerlaufroutine zugeordnet ist, d. h. eine Änderung, die durch den im csecIdle-Parameter übergebenen Wert angegeben wird.

  • FIRCIRO: Eine Änderung der Optionen für die Leerlaufroutine, d. h. eine Änderung, die durch den im iroIdle-Parameter übergebenen Wert angegeben wird.

  • FIRCPFN: Eine Änderung am Routinezeiger im Leerlauf, d. h. eine Änderung, die durch den wert angegeben wird, der im pfnIdle-Parameter übergeben wird.

  • FIRCPRI: Eine Änderung der Priorität der Leerlaufroutine, d. h. eine Änderung, die durch den wert angegeben wird, der im priIdle-Parameter übergeben wird.

  • FIRCPV: Eine Änderung des Speicherblocks der Leerlaufroutine, d. h. eine Änderung, die durch den im parameter pvIdleParam übergebenen Wert angegeben wird.

Rückgabewert

None.

Hinweise

Die folgenden Funktionen befassen sich mit der MAPI-Leerlauf-Engine und mit Leerlaufroutinen, die auf dem FNIDLE-Funktionsprototyp basieren:

Idle Routine-Funktion Nutzung
ChangeIdleRoutine
Ändert die Merkmale einer registrierten Leerlaufroutine.
DeregisterIdleRoutine
Entfernt eine registrierte Leerlaufroutine aus dem MAPI-System.
EnableIdleRoutine
Deaktiviert oder aktiviert eine registrierte Leerlaufroutine erneut, ohne sie aus dem MAPI-System zu entfernen.
FtgRegisterIdleRoutine
Fügt dem MAPI-System eine Leerlaufroutine mit oder ohne Aktivierung hinzu.
MAPIDeInitIdle
Fährt die MAPI-Leerlauf-Engine für die aufrufende Anwendung herunter.
MAPIInitIdle
Initialisiert die MAPI-Leerlauf-Engine für die aufrufende Anwendung.

ChangeIdleRoutine, DeregisterIdleRoutine und EnableIdleRoutine verwenden als Eingabeparameter das von FtgRegisterIdleRoutine zurückgegebene Funktionstag.

Wenn alle Vordergrundaufgaben für die Plattform im Leerlauf sind, ruft die MAPI-Idle-Engine die Leerlaufroutine mit der höchsten Priorität auf, die ausgeführt werden kann. Es gibt keine Garantie für die Aufrufreihenfolge bei Leerlaufroutinen mit derselben Priorität.