SERVICEWIZARDDLGPROC
S’applique à : Outlook 2013 | Outlook 2016
Définit une fonction de rappel appelée par l’Assistant Profil pour permettre à un fournisseur de services de réagir aux événements utilisateur lorsque les feuilles de propriétés ou les pages du fournisseur sont affichées.
Propriété | Valeur |
---|---|
Fichier d’en-tête : |
Mapiwz.h |
Fonction définie implémentée par : |
Fournisseurs de services |
Fonction définie appelée par : |
Assistant Profil MAPI |
BOOL SERVICEWIZARDDLGPROC(
HWND hDlg,
UINT wMsgID,
WPARAM wParam,
LPARAM lParam
);
Paramètres
hDlg
[in] Poignée de fenêtre de la boîte de dialogue Assistant Profil.
wMsgID
[in] Message de fenêtre à traiter. En plus des messages de fenêtre standard attendus par une boîte de dialogue modale, les messages suivants peuvent être reçus :
WM_CLOSE
L’Assistant Profil est terminé. Le fournisseur de services doit effectuer tous les nettoyages requis, comme la désaffectation de toute mémoire allouée dynamiquement.
WM_COMMAND
L’un des contrôles du fournisseur a été sélectionné, ou l’utilisateur a cliqué sur le bouton Suivant ou Précédent . La valeur dans le paramètre wParam indique lequel de ces événements utilisateur s’est produit.
WM_INITDIALOG
L’utilisateur a été déplacé vers une autre page de propriétés, pour laquelle la boîte de dialogue doit être initialisée. Le fournisseur doit initialiser les contrôles que l’Assistant Profil a ajoutés à la boîte de dialogue.
WIZ_QUERYNUMPAGES
L’Assistant Profil demande le nombre de pages que le fournisseur doit afficher. Le fournisseur doit retourner le nombre de pages au lieu de TRUE ou FALSE. Par exemple, utilisez l’instruction return suivante pour indiquer que trois pages doivent être affichées :
return (BOOL)3;
wParam
[in] Paramètre 32 bits associé aux messages de fenêtre. Les valeurs possibles dépendent du message spécifié dans le paramètre wMsgID . En plus des valeurs attendues avec les messages de fenêtre normale pour une boîte de dialogue modale, les valeurs suivantes peuvent être reçues :
WIZ_NEXT
Lorsque wMsgID contient WM_COMMAND, l’utilisateur a cliqué sur le bouton Suivant .
WIZ_PREV
Lorsque wMsgID contient WM_COMMAND, l’utilisateur a cliqué sur le bouton Précédent .
lParam
[in] Paramètre 32 bits associé aux messages de fenêtre. Les valeurs possibles dépendent du message spécifié dans le paramètre wMsgID .
Valeur renvoyée
La valeur retournée par une fonction basée sur SERVICEWIZARDDLGPROC dépend du message de fenêtre reçu. Notez en particulier la valeur de retour exceptionnelle du message WIZ_QUERYNUMPAGES. Les valeurs de retour normales sont les suivantes :
TRUE
Le fournisseur de services a traité le message de fenêtre reçu.
FALSE
Le fournisseur de services n’a pas traité le message de fenêtre reçu.
Remarques
Lorsque l’utilisateur passe d’une page de propriétés à une autre, le fournisseur est chargé de masquer les contrôles de l’ancienne page et d’afficher les contrôles de la page suivante ou précédente. Lorsque l’utilisateur clique sur le bouton Suivant , la fonction basée sur SERVICEWIZARDDLGPROC est appelée avec le message WM_COMMAND et WIZ_NEXT dans le paramètre wParam . Les étapes suivantes décrivent ce qui se produit entre le moment où l’utilisateur clique sur Suivant et le moment où les pages de configuration du premier fournisseur sont affichées.
L’Assistant Profil masque tous les contrôles qui se trouvent dans la fenêtre.
L’Assistant Profil ajoute les contrôles masqués du fournisseur à la page.
L’Assistant Profil appelle SERVICEWIZARDDLGPROC en envoyant le message WM_INITDIALOG, afin que le fournisseur puisse initialiser les contrôles.
L’Assistant Profil appelle SERVICEWIZARDDLGPROC pour envoyer le message WIZ_QUERYNUMPAGES. Le fournisseur retourne le nombre de pages à afficher.
L’Assistant Profil appelle SERVICEWIZARDDLGPROC en envoyant le message WM_COMMAND avec le paramètre wParam défini sur WIZ_NEXT ou WIZ_PREV. À ce stade, le fournisseur retourne FALSE {error} ou révèle ses contrôles et retourne TRUE {success}. Si l’Assistant Profil passe ID_NEXT, la première page du fournisseur s’affiche. Si ID_PREV est transmis, la dernière page s’affiche.
L’Assistant Profil appelle la fonction SERVICEWIZARDDLGPROC du fournisseur, en envoyant le message WM_COMMAND avec le paramètre wParam défini sur WIZ_NEXT ou WIZ_PREV (selon le bouton sur lequel l’utilisateur a cliqué). Le fournisseur est chargé d’afficher ou de masquer ses contrôles et d’écrire ses données dans imapIProp transmises à l’Assistant Profil pour parcourir sa séquence de pages. Le fournisseur doit retourner TRUE si la page suivante ou précédente a été correctement affichée, et FALSE si ni la page suivante ni la page précédente n’ont pu être affichées. Le fournisseur doit être conscient du moment où il sort de sa séquence de pages et répondre de manière appropriée en masquant ses contrôles et en écrivant ses données dans le profil.
Si l’utilisateur sort de la plage de pages du fournisseur, l’Assistant Profil supprime les contrôles masqués du fournisseur de la boîte de dialogue et appelle le fournisseur suivant ou affiche sa page suivante s’il s’agit du dernier fournisseur.