Partager via


Fonction SHAutoComplete (shlwapi.h)

Indique aux contrôles de modification système d’utiliser la saisie semi-automatique pour aider à terminer les URL ou les chemins d’accès du système de fichiers.

Syntaxe

LWSTDAPI SHAutoComplete(
  [in] HWND  hwndEdit,
       DWORD dwFlags
);

Paramètres

[in] hwndEdit

Type : HWND

Handle de fenêtre d’un contrôle d’édition système. En règle générale, ce paramètre est le handle d’un contrôle d’édition ou le contrôle d’édition incorporé dans un contrôle ComboBoxEx .

dwFlags

Type : DWORD

Indicateurs permettant de contrôler le fonctionnement de SHAutoComplete. Les quatre premiers indicateurs sont utilisés pour remplacer les paramètres du Registre Internet Explorer. L’utilisateur peut modifier ces paramètres manuellement en lançant la feuille de propriétés Options Internet à partir du menu Outils et en cliquant sur l’onglet Avancé .

SHACF_AUTOAPPEND_FORCE_OFF (0x80000000)

Ignorez la valeur par défaut du Registre et forcez la fonctionnalité AutoAppend à désactiver. Cet indicateur doit être utilisé en combinaison avec un ou plusieurs des indicateurs SHACF_FILESYS* ou SHACF_URL*.

SHACF_AUTOAPPEND_FORCE_ON (0x40000000)

Ignorez la valeur du Registre et forcez la fonctionnalité AutoAppend à activer. La chaîne terminée s’affiche dans la zone d’édition avec les caractères ajoutés mis en surbrillance. Cet indicateur doit être utilisé en combinaison avec un ou plusieurs des indicateurs SHACF_FILESYS* ou SHACF_URL*.

SHACF_AUTOSUGGEST_FORCE_OFF (0x20000000)

Ignorez la valeur par défaut du Registre et forcez la fonctionnalité Suggestion automatique à désactiver. Cet indicateur doit être utilisé en combinaison avec un ou plusieurs des indicateurs SHACF_FILESYS* ou SHACF_URL*.

SHACF_AUTOSUGGEST_FORCE_ON (0x10000000)

Ignorez la valeur de Registre et forcez la fonctionnalité Suggestion automatique sur. Une sélection des chaînes terminées possibles s’affiche sous la forme d’une liste déroulante, sous la zone d’édition. Cet indicateur doit être utilisé en combinaison avec un ou plusieurs des indicateurs SHACF_FILESYS* ou SHACF_URL*.

SHACF_DEFAULT (0x00000000)

Paramètre par défaut, équivalent à SHACF_FILESYSTEM | SHACF_URLALL. SHACF_DEFAULT ne peut pas être combiné avec d’autres indicateurs.

SHACF_FILESYS_ONLY (0x00000010)

Incluez le système de fichiers uniquement.

SHACF_FILESYS_DIRS (0x00000020)

Incluez le système de fichiers et les répertoires, les serveurs UNC et les partages de serveurs UNC.

SHACF_FILESYSTEM (0x00000001)

Incluez le système de fichiers et le reste de l’interpréteur de commandes (bureau, ordinateur et Panneau de configuration, par exemple).

SHACF_URLALL (SHACF_URLHISTORY | SHACF_URLMRU)

Incluez les URL dans les listes Historique des utilisateurs et Récemment utilisé . Équivalent à SHACF_URLHISTORY | SHACF_URLMRU.

SHACF_URLHISTORY (0x00000002)

Incluez les URL dans la liste historique de l’utilisateur.

SHACF_URLMRU (0x00000004)

Incluez les URL dans la liste Récemment utilisé de l’utilisateur.

SHACF_USETAB (0x00000008)

Autorisez l’utilisateur à effectuer une sélection dans la liste de suggestion automatique en appuyant sur la touche TAB. Si cet indicateur n’est pas défini, appuyez sur la touche TAB pour déplacer le focus sur le contrôle suivant et fermer la liste de suggestion automatique. Si SHACF_USETAB est défini, appuyez sur la touche TAB pour sélectionner le premier élément de la liste. Appuyez de nouveau sur Tab pour sélectionner l’élément suivant dans la liste, et ainsi de suite. Lorsque l’utilisateur atteint la fin de la liste, l’appui sur la touche TAB suivant revient au contrôle d’édition. Cet indicateur doit être utilisé en combinaison avec un ou plusieurs des indicateurs SHACF_FILESYS* ou SHACF_URL* répertoriés sur cette page.

SHACF_VIRTUAL_NAMESPACE (0x00000040)

Valeur retournée

Type : HRESULT

Si cette fonction réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.

Remarques

SHAutoComplete fonctionne sur n’importe quel contrôle d’édition système, y compris le contrôle d’édition et les contrôles qui contiennent des contrôles d’édition tels que les contrôles ComboBoxEx . Pour récupérer un handle dans un contrôle d’édition incorporé dans un contrôle ComboBoxEx, envoyez au contrôle ComboBoxEx un message CBEM_GETEDITCONTROL .

Une application doit avoir appelé CoInitialize ou OleInitialize avant d’appeler cette fonction. Impossible d’appeler CoUninitialize ou OleUninitialize tant que la zone d’édition n’a pas terminé de traiter le message WM_DESTROY pour hwndEdit.

Le nombre maximal d’éléments pouvant être affichés dans une zone de liste déroulante suggestion automatique est de 1 000.

Sur les versions de Windows antérieures à Windows Vista et de serveur antérieures à Windows Server 2008, SHAutoComplete ne doit pas être appelé plusieurs fois avec le même HWND. Cela entraîne une fuite de mémoire. Il empêche la mise en production des ressources d’origine, notamment la instance précédente de l’objet AutoComplete, les objets énumérateurs référencés par l’objet AutoComplete précédent et les ressources GDI (Graphics Device Interface) Windows. Au lieu d’appeler à nouveau SHAutoComplete avec un autre ensemble d’indicateurs pour modifier la liste de saisie semi-automatique, appelez CoCreateInstance avec CLSID_AutoComplete pour obtenir l’objet AutoComplete. Passez ensuite le HWND à l’objet pour l’initialiser et fournir votre propre énumérateur personnalisé. Vous pouvez utiliser CLSID_ACLMulti si vous souhaitez que la saisie semi-automatique utilise plusieurs listes.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel, Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête shlwapi.h
Bibliothèque Shlwapi.lib
DLL Shlwapi.dll (version 5.0 ou ultérieure)

Voir aussi

Utilisation de la saisie semi-automatique