Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Cada cadena de mensaje que especifique en el manifiesto debe hacer referencia a una cadena en la sección de localización del manifiesto. La sección de localización contiene una sección de tabla de cadenas para cada configuración regional que admita.
En el ejemplo siguiente se muestra cómo definir una tabla de cadenas. Debe especificar los atributos id y value de la cadena. Use el valor del atributo id para hacer referencia a la cadena en el manifiesto. El atributo value contiene la cadena localizada.
<instrumentationManifest
xmlns="http://schemas.microsoft.com/win/2004/08/events"
xmlns:win="http://manifests.microsoft.com/win/2004/08/windows/events"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
>
<instrumentation>
<events>
<provider name="Microsoft-Windows-SampleProvider"
guid="{1db28f2e-8f80-4027-8c5a-a11f7f10f62d}"
symbol="PROVIDER_GUID"
resourceFileName="<path to the exe or dll that contains the metadata resources>"
messageFileName="<path to the exe or dll that contains the string resources>"
message="$(string.ProviderName)">
. . .
</provider>
</events>
</instrumentation>
<localization>
<resources culture="en-US">
<stringTable>
<string id="ProviderName" value="Sample Provider"/>
<string id="PathNotFound" value="The path %1 was not found."/>
</stringTable>
</resources>
</localization>
</instrumentationManifest>
En lugar de agregar cadenas localizadas al manifiesto, debe crear un archivo de interfaz de usuario multilingüe (MUI) para cada idioma que admita. Use un archivo de texto de mensaje para especificar las cadenas localizadas.
En el procedimiento siguiente se describe cómo crear un archivo MUI para inglés y francés.
Para crear un archivo MUI para inglés y francés
Cree un archivo de texto de mensaje que cree las cadenas de mensaje en francés. Para obtener más información sobre cómo crear un archivo de texto de mensaje, vea Archivos de texto de mensajes. Los identificadores de mensaje que especifique en el archivo de texto del mensaje deben coincidir con los identificadores de recursos que el compilador de mensajes generó para las mismas cadenas del manifiesto. Para determinar los identificadores de recursos usados para las cadenas del manifiesto, vea el archivo .h que el compilador de mensajes generó al compilar el manifiesto.
LanguageNames=(French=0x40C:MSG0040C) ; // The following are message definitions. MessageId=0x00000065 SymbolicName=MSG_ProviderName Language=French <FRENCH STRING GOES HERE> . MessageId=0x00000066 SymbolicName=MSG_PathNotFound Language=French <FRENCH STRING GOES HERE> .Ejecute los comandos siguientes para crear el archivo DLL de recursos que contiene las cadenas localizadas. El archivo messages.mc es el archivo de texto del mensaje que creó en el paso 1.
mc -u -U messages.mc rc -r messages.rc link -dll -noentry -out:messages.dll messages.resEn la carpeta que contiene el proveedor, cree una subcarpeta para cada configuración regional que admita. El nombre de la subcarpeta debe ser el nombre del idioma de esa configuración regional. Por ejemplo, para 0x0409, use en-US como nombre de carpeta.
Cree un archivo .rcconfig que indique a la herramienta Muirct.exe que desea dividir los recursos de cadena de mensaje del archivo ejecutable y los archivos DLL de recursos. A continuación se muestra un archivo .rcconfig de ejemplo.
<localization> <resources> <win32Resources fileType="Application"> <neutralResources> </neutralResources> <localizedResources> <resourceType typeNameId="#11"/> </localizedResources> </win32Resources> </resources> </localization>Ejecute los siguientes comandos Muirct.exe para dividir las cadenas en inglés del archivo ejecutable del proveedor.
muirct -q split.rcconfig -v 2 -x 0x0409 -g 0x0409 provider.exe provider.exe.ln en-US\provider.exe.mui muirct -c provider.exe.ln -e en-US\provider.exe.muiEjecute los siguientes comandos de Muirct.exe para dividir las cadenas francesas del archivo DLL de recursos. Quite el archivo neutro de idioma (fr-FR\messages.dll) después de crear el archivo MUI.
muirct -q split.rcconfig -v 2 -x 0x040C -g 0x0409 messages.dll fr-FR\messages.dll fr-FR\provider.exe.mui muirct -c provider.exe.ln -e fr-FR\provider.exe.muiCambie el nombre de provider.exe.ln a provider.exe.