Primenjuje se na
Internet Explorer

Simptomi

Ako računar ima nikada nisu pokrenuti Microsoft Internet Explorer i funkciju WinHttpGetIEProxyConfigForCurrentUser u bilo koji program, dobijate sledeću poruku o grešci:

ERROR_FILE_NOT_FOUND

Uzrok

Funkcija WinHttpGetIEProxyConfigForCurrentUser koristi sljedeći registarski podključ:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet postavkeOvaj potključ registratora kreira se prvi put da je Internet Explorer pokreće. Ako računar nije pokrenut Internet Explorer, ovaj potključ registratora ne postoji. Kada si pozvati funkciju WinHttpGetIEProxyConfigForCurrentUser u programu, funkcija pretražuje za ovu stavku registratora mogu da ga nadjem i dobijate poruku o grešci.

Rešenje

Da biste rešili ovaj problem, pokrenite Internet Explorer, a zatim koristite funkciju WinHttpGetIEProxyConfigForCurrentUser u bilo koji program.

Više informacija

Koraci koji dovode do javljanja problema

  1. Prijavite se na računar gde Internet Explorer nikada nije koristila.

  2. Pokrenite Microsoft Visual Studio .NET.

  3. U meniju datoteka postavite pokazivač na nju, a zatim izaberite stavku projekat.

  4. U okviru Tipovi projekataizaberite stavku Visual C++ projekti.

  5. Pod Predlošci, kliknite na Win32 projekta.

  6. U polju " ime ", upišite Test, a onda kliknite na OK.

  7. Na stranici Dobro došli u čarobnjak za Win32 aplikacija , kliknite na dugme Postavke aplikacije.

  8. U okviru tip aplikacije, izaberite Console aplikaciju, a zatim kliknite na dugme Završi. Test.cpp datoteka je kreirana.

  9. Zamenite postojeću šifru u Test.cpp datoteci sledeći kod:

    #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

    Napomena Winhttp.h datoteke i datoteke sa Winhttp.lib su obuhvaćeni na platformi Microsoft komplet za razvoj softvera (SDK). Da biste preuzeli Platform SDK, posetite sledeću Microsoft Web lokaciju:

  10. U projektu meniju kliknite na Test svojstva.

  11. U lijevom oknu, kliknite dvaput na Linker.

  12. U okviru Linker, izaberite unos.

  13. U desnom oknu, upišite winhttp.lib u polje Dodatne zavisnosti , a zatim kliknite na dugme u redu.

  14. U meniju izgradi kliknite Izgradi rešenje.

  15. Pritisnite kombinaciju tastera CTRL + F5 za pokretanje programa bez modulu za otklanjanje grešaka. Dobijate poruku o grešci koja je pomenuta u odeljku „Simptomi”.

Reference

Za više informacija, posetite sledeću Microsoft Developer Network (MSDN) Web lokaciju:

Da li vam je potrebna dodatna pomoć?

Želite još opcija?

Istražite pogodnosti pretplate, pregledajte kurseve za obuku, saznajte kako da obezbedite uređaj i još mnogo toga.