Fonction SHCreateThread (shlwapi.h)
Crée un thread.
Syntaxe
BOOL SHCreateThread(
[in] LPTHREAD_START_ROUTINE pfnThreadProc,
[in, optional] void *pData,
[in] SHCT_FLAGS flags,
[in, optional] LPTHREAD_START_ROUTINE pfnCallback
);
Paramètres
[in] pfnThreadProc
Type : LPTHREAD_START_ROUTINE
Pointeur vers une fonction définie par l’application du type LPTHREAD_START_ROUTINE . Si un nouveau thread a été créé avec succès, cette fonction définie par l’application est appelée dans le contexte de ce thread. SHCreateThread n’attend pas que la fonction pointée par ce paramètre se termine avant de revenir à son appelant. La valeur de retour de la fonction définie par l’application est le code de sortie du thread.
[in, optional] pData
Type : void*
Pointeur vers une structure de données facultative définie par l’application qui contient des données d’initialisation. Elle est passée à la fonction pointée vers pfnThreadProc et, éventuellement, pfnCallback. Cette valeur peut être NULL.
[in] flags
Type : SHCT_FLAGS
Indicateurs qui contrôlent le comportement de la fonction. Une ou plusieurs constantes CTF .
[in, optional] pfnCallback
Type : LPTHREAD_START_ROUTINE
Pointeur vers une fonction facultative définie par l’application du type LPTHREAD_START_ROUTINE . Cette fonction est appelée dans le contexte du thread créé avant l’appel de la fonction pointée par pfnThreadProc . Il recevra également pData comme argument. SHCreateThread attend que la fonction pointée par pfnCallback retourne avant de revenir à son appelant. La valeur de retour de la fonction pointée vers pfnCallback est ignorée.
Valeur retournée
Type : BOOL
Retourne TRUE si le thread est correctement créé, ou FALSE dans le cas contraire. En cas d’échec, utilisez GetLastError pour récupérer la valeur d’erreur spécifique, comme indiqué ici.
if (!SHCreateThread(...))
{
hr = HRESULT_FROM_WIN32( GetLastError() );
}
else
{
....
}
Remarques
La fonction pointée par pfnThreadProc et pfnCallback doit prendre la forme suivante.
DWORD WINAPI ThreadProc(LPVOID pData)
{
...
}
Le nom de la fonction est arbitraire. Le paramètre pData pointe vers une structure de données définie par l’application avec des informations d’initialisation.
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
Versions de l’interpréteur de commandes et des contrôles communs