Partager via


Utilisation de WinHTTP en tant qu’assembly côte à côte

Sur Windows Server 2003, WinHTTP est implémenté en tant qu’assembly côte à côte et doit être lié à en tant que tel. Notez que cela ne s’applique pas à Windows Vista et versions ultérieures.

Assemblys côte à côte

À compter de Microsoft Windows XP, un mécanisme d’assemblys côte à côte a été fourni pour contrôler la liaison au moment de l’exécution afin d’éviter les conflits de gestion de version de bibliothèque de liens dynamiques (DLL). Pour plus d’informations sur les assemblys côte à côte, consultez À propos des applications isolées et des assemblys côte à côte.

Pour utiliser ce mécanisme pour établir un lien vers WinHTTP version 5.1 sur Windows Server 2003, une application doit incorporer un manifeste qui spécifie WinHTTP en tant qu’assembly dépendant. Pour plus d’informations sur la procédure à suivre, consultez Utilisation d’assemblys côte à côte .

Exemple de manifeste d’application WinHTTP

L’exemple de manifeste ci-dessous illustre un manifeste d’application qui peut être utilisé pour la liaison à WinHTTP.

Tous les attributs à l’exception de « type » de «< assembly><assemblyidentity> » doivent être modifiés en fonction de votre application particulière. Il en va de même pour le contenu de l’élément «< description> ».

En outre, assurez-vous que l’attribut « processorArchitecture » de « dependentAssembly><assemblyIdentity> » correspond à l’attribut « processorArchitecture » de l’assembly<>< assemblyIdentity>.< Ci-dessous, par exemple, les deux sont définis sur « x86 ».

Toutes les valeurs non spécifiques à votre application doivent prendre les formes indiquées ci-dessous.

<?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>