Structure ACTCTXA (winbase.h)
La structure ACTCTX
Syntaxe
typedef struct tagACTCTXA {
ULONG cbSize;
DWORD dwFlags;
LPCSTR lpSource;
USHORT wProcessorArchitecture;
LANGID wLangId;
LPCSTR lpAssemblyDirectory;
LPCSTR lpResourceName;
LPCSTR lpApplicationName;
HMODULE hModule;
} ACTCTXA, *PACTCTXA;
Membres
cbSize
Taille, en octets, de cette structure. Il est utilisé pour déterminer la version de cette structure.
dwFlags
Indicateurs qui indiquent comment les valeurs incluses dans cette structure doivent être utilisées. Définissez les bits non définis dans dwFlags sur 0. Si aucun bits non défini n’est défini sur 0, l’appel à CreateActCtx qui crée le contexte d’activation échoue et retourne un code d’erreur de paramètre non valide.
lpSource
Chaîne terminée par null spécifiant le chemin d’accès du fichier manifeste ou de l’image PE à utiliser pour créer le contexte d’activation. Si ce chemin fait référence à un fichier EXE ou DLL, le membre lpResourceName est requis.
wProcessorArchitecture
Identifie le type de processeur utilisé. Spécifie l’architecture du processeur du système.
Cette valeur peut être l’une des valeurs suivantes :
wLangId
Spécifie le manifeste de langue à utiliser. La valeur par défaut est la langue actuelle de l’interface utilisateur de l’utilisateur actuel.
Si la langue demandée est introuvable, une approximation est recherchée à l’aide de l’ordre suivant :
- Langue spécifique de l’utilisateur actuel. Par exemple, pour l’anglais américain (1033).
- Langue principale de l’utilisateur actuel. Par exemple, pour l’anglais (9).
- Langue spécifique du système actuel.
- Langue principale du système actuel.
- Une langue mondiale non spécifique. Neutre en langue (0).
lpAssemblyDirectory
Répertoire de base dans lequel effectuer une détection d’assembly privé si les assemblys dans le contexte d’activation ne sont pas présents dans le magasin à l’échelle du système.
lpResourceName
Pointeur vers une chaîne terminée par null qui contient le nom de la ressource à charger à partir du PE spécifié dans hModule ou lpSource. Si le nom de la ressource est un entier, définissez ce membre à l’aide de MAKEINTRESOURCE. Ce membre est requis si lpSource fait référence à une DLL ou EXE.
lpApplicationName
Nom de l’application actuelle. Si la valeur de ce membre est définie sur Null, le nom de l’exécutable qui a lancé le processus actuel est utilisé.
hModule
Utilisez ce membre plutôt que lpSource si vous avez déjà chargé une DLL et souhaitez l’utiliser pour créer des contextes d’activation plutôt que d’utiliser un chemin dans lpSource. Consultez lpResourceName pour connaître les règles de recherche de ressources dans ce module.
Remarques
Si le fichier identifié par la valeur du membre
Dans la plupart des cas, l’appelant ne doit pas définir les indicateurs ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID et ACTCTX_FLAG_LANGID_VALID du membre dwFlags. En outre, dans la plupart des cas, la valeur du membre lpResourceName doit être définie sur Null.
Les valeurs de lpApplicationName et lpAssemblyDirectory ne sont pas définies sur Null lorsque l’exécutable qui crée le contexte d’activation est un hôte pour l’application. Dans ce cas, l’hôte peut définir un autre nom pour l’application afin de rechercher des fichiers de configuration, signaler des erreurs, etc.
Note
L’en-tête winbase.h définit ACTCTX comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
d’en-tête | winbase.h (inclure Windows.h) |