Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Symptômes

Si votre ordinateur n’a jamais exécuté Microsoft Internet Explorer et que vous utilisez la fonction WinHttpGetIEProxyConfigForCurrentUser dans un programme, le message d’erreur suivant s’affiche :

ERROR_FILE_NOT_FOUND

Cause

La fonction WinHttpGetIEProxyConfigForCurrentUser utilise la sous-clé de Registre suivante :

Paramètres HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet SettingsCette sous-clé de Registre est créée la première fois que Internet Explorer s’exécute. Si votre ordinateur n’a pas exécuté Internet Explorer, cette sous-clé de Registre n’existe pas. Lorsque vous appelez la fonction WinHttpGetIEProxyConfigForCurrentUser dans un programme, la fonction de recherche pour cette entrée de Registre ne le trouve pas et vous recevez le message d’erreur.

Résolution

Pour résoudre ce problème, démarrez Internet Explorer, puis utiliser la fonction WinHttpGetIEProxyConfigForCurrentUser dans n’importe quel programme.

Informations supplémentaires

Procédure pour reproduire le problème

  1. Ouvrez une session sur un ordinateur où Internet Explorer n’a jamais été utilisé.

  2. Démarrez Microsoft Visual Studio .NET.

  3. Dans le menu Fichier, pointez sur Nouveau, puis cliquez sur Projet.

  4. Sous Types de projets, cliquez sur Projets Visual C++.

  5. Sous modèles, cliquez sur Projet Win32.

  6. Dans la zone nom , tapez Test, puis cliquez sur OK.

  7. Dans la page Bienvenue dans l’Assistant Application Win32 , cliquez sur Paramètres de l’Application.

  8. Sous type d’Application, cliquez sur application Console, puis cliquez sur Terminer. Le fichier Test.cpp est créé.

  9. Remplacez le code existant dans le fichier Test.cpp par le code suivant :

    #include "stdafx.h"#include <Windows.h>#include <Winhttp.h>using namespace std;void main(){WINHTTP_CURRENT_USER_IE_PROXY_CONFIG MyProxyConfig;if(!WinHttpGetIEProxyConfigForCurrentUser(&MyProxyConfig)){//check the errorDWORD Err = GetLastError();cout << "WinHttpGetIEProxyConfigForCurrentUser failed with the following error number: " << Err << endl;switch (Err){case ERROR_FILE_NOT_FOUND:cout << "The error is ERROR_FILE_NOT_FOUND" << endl;break;case ERROR_WINHTTP_INTERNAL_ERROR:cout << "ERROR_WINHTTP_INTERNAL_ERROR" << endl;break;case ERROR_NOT_ENOUGH_MEMORY:cout << "ERROR_NOT_ENOUGH_MEMORY" << endl;break;default:cout << "Look up error in header file." << endl; }//end switch}//end ifelse{//no error so check the proxy settings and free any stringscout << "Auto Detect is: " << MyProxyConfig.fAutoDetect << endl;if(NULL != MyProxyConfig.lpszAutoConfigUrl){wcout << "AutoConfigURL is: " << MyProxyConfig.lpszAutoConfigUrl << endl;GlobalFree(MyProxyConfig.lpszAutoConfigUrl);}if(NULL != MyProxyConfig.lpszProxy){wcout << "AutoConfigURL is: " << MyProxyConfig.lpszProxy << endl;GlobalFree(MyProxyConfig.lpszProxy);}if(NULL != MyProxyConfig.lpszProxyBypass){wcout << "AutoConfigURL is: " << MyProxyConfig.lpszProxyBypass << endl;GlobalFree(MyProxyConfig.lpszProxyBypass);}}//end elsecout << "finished!";}//end main

    Remarque Le fichier Winhttp.h et le fichier Winhttp.lib sont inclus dans le Microsoft Platform software development kit (SDK). Pour télécharger le Kit de développement de plate-forme, visitez le site Web de Microsoft à l’adresse suivante :

  10. Dans le menu projet , cliquez sur Propriétés de Test.

  11. Dans le volet gauche, double-cliquez sur éditeur de liens.

  12. Dans l' éditeur de liens, cliquez sur entrée.

  13. Dans le volet droit, tapez winhttp.lib dans le champ Dépendances supplémentaires , puis cliquez sur OK.

  14. Dans le menu Générer, cliquez sur Générer la solution.

  15. Appuyez sur CTRL + F5 pour exécuter le programme sans le débogueur. Vous recevez le message d’erreur qui est mentionné dans la section « Symptômes ».

Références

Pour plus d’informations, reportez-vous au site web MSDN (Microsoft Developer Network) à l’adresse suivante (en anglais) :

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×