Struttura ACTCTXW (winbase.h)
La struttura ACTCTX viene usata dalla funzione CreateActCtx per creare il contesto di attivazione.
Sintassi
typedef struct tagACTCTXW {
ULONG cbSize;
DWORD dwFlags;
LPCWSTR lpSource;
USHORT wProcessorArchitecture;
LANGID wLangId;
LPCWSTR lpAssemblyDirectory;
LPCWSTR lpResourceName;
LPCWSTR lpApplicationName;
HMODULE hModule;
} ACTCTXW, *PACTCTXW;
Members
cbSize
Dimensione, in byte, della struttura. Viene usato per determinare la versione di questa struttura.
dwFlags
Flag che indicano come devono essere usati i valori inclusi in questa struttura. Impostare eventuali bit non definiti in dwFlags su 0. Se i bit non definiti non sono impostati su 0, la chiamata a CreateActCtx che crea il contesto di attivazione ha esito negativo e restituisce un codice di errore di parametro non valido.
lpSource
Stringa con terminazione null che specifica il percorso del file manifesto o dell'immagine PE da usare per creare il contesto di attivazione. Se questo percorso fa riferimento a un file EXE o DLL, è necessario il membro lpResourceName .
wProcessorArchitecture
Identifica il tipo di processore usato. Specifica l'architettura del processore del sistema.
Questo valore può essere uno dei valori seguenti:
wLangId
Specifica il manifesto della lingua che deve essere usato. Il valore predefinito è la lingua corrente dell'interfaccia utente dell'utente corrente.
Se non è possibile trovare la lingua richiesta, viene cercata un'approssimazione usando l'ordine seguente:
- Lingua specifica dell'utente corrente. Ad esempio, per l'inglese statunitense (1033).
- Lingua primaria dell'utente corrente. Ad esempio, per l'inglese (9).
- Lingua specifica del sistema corrente.
- Lingua primaria del sistema corrente.
- Lingua non specifica in tutto il mondo. Lingua neutrale (0).
lpAssemblyDirectory
Directory di base in cui eseguire il probing dell'assembly privato se gli assembly nel contesto di attivazione non sono presenti nell'archivio a livello di sistema.
lpResourceName
Puntatore a una stringa con terminazione null contenente il nome della risorsa da caricare dall'oggetto PE specificato in hModule o lpSource. Se il nome della risorsa è un intero, impostare questo membro usando MAKEINTRESOURCE. Questo membro è obbligatorio se lpSource fa riferimento a un file EXE o DLL.
lpApplicationName
Nome dell'applicazione corrente. Se il valore di questo membro è impostato su Null, viene usato il nome del file eseguibile che ha avviato il processo corrente.
hModule
Usare questo membro anziché lpSource se è già stata caricata una DLL e si vuole usarla per creare contesti di attivazione anziché usare un percorso in lpSource. Vedere lpResourceName per le regole di ricerca delle risorse in questo modulo.
Commenti
Se il file identificato dal valore del membro lpSource è un file di immagine PE, CreateActCtx cerca il manifesto nel file manifesto che si trova nella stessa directory e nella prima risorsa RT_MANIFEST situata nel file di immagine PE. Per trovare una risorsa denominata specifica dall'immagine, impostare lpResourceName sul nome della risorsa e aggiungere il ACTCTX_FLAG_RESOURCE_NAME_VALID al membro dwFlags . Per altre informazioni sulla specifica dei nomi delle risorse, vedere FindResource .
Nella maggior parte dei casi, il chiamante non deve impostare i flag di ACTCTX_FLAG_PROCESSOR_ARCHITECTURE_VALID e ACTCTX_FLAG_LANGID_VALID del membro dwFlags . Inoltre, nella maggior parte dei casi, il valore del membro lpResourceName deve essere impostato su Null.
I valori di lpApplicationName e lpAssemblyDirectory non sono impostati su Null quando il file eseguibile che crea il contesto di attivazione è un host per l'applicazione. In questo caso, l'host può impostare un nome diverso per l'applicazione per trovare file di configurazione, segnalare errori e così via.
Nota
L'intestazione winbase.h definisce ACTCTX come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | winbase.h (include Windows.h) |