Compartir a través de


Usar WinHTTP como ensamblado en paralelo

En Windows Server 2003, WinHTTP se implementa como un ensamblado en paralelo y se debe vincular a como tal. Tenga en cuenta que esto no se aplica a Windows Vista y versiones posteriores.

Ensamblados en paralelo

A partir de Microsoft Windows XP, se proporcionó un mecanismo de ensamblados en paralelo para controlar la vinculación en tiempo de ejecución para evitar conflictos de control de versiones de la biblioteca de vínculos dinámicos (DLL). Para obtener información sobre los ensamblados en paralelo, vea Acerca de las aplicaciones aisladas y ensamblados en paralelo.

Para usar este mecanismo para vincular a WinHTTP versión 5.1 en Windows Server 2003, una aplicación debe incorporar un manifiesto que especifique WinHTTP como ensamblado dependiente. Consulte Uso de ensamblados en paralelo para obtener más información sobre cómo hacerlo.

Un manifiesto de aplicación WinHTTP de ejemplo

En el siguiente manifiesto de ejemplo se muestra un manifiesto de aplicación que se puede usar para vincular a WinHTTP.

Todos los atributos excepto "type" del "<assembly assemblyIdentity><>" deben modificarse según corresponda para su aplicación en particular. Lo mismo sucede con el contenido del elemento "<description>".

Además, asegúrese de que el atributo "processorArchitecture" del elemento "<dependentAssembly><assemblyIdentity>" coincide con el atributo "processorArchitecture" del "<assembly><assemblyIdentity>". A continuación, por ejemplo, ambos se establecen en "x86".

Todos los valores no específicos de la aplicación deben tener los formularios que se muestran a continuación.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity
                    version="1.0.0.0"
                    processorArchitecture="x86"
                    name="Microsoft.Windows.Sample"
                    type="win32" />
  <description>Sample WinHttp Application</description>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity 
                    type="win32" 
                    name="Microsoft.Windows.WinHTTP" 
                    version="5.1.0.0"
                    processorArchitecture="x86" 
                    publicKeyToken="6595b64144ccf1df"
                    language="*" />
    </dependentAssembly>
  </dependency>
</assembly>