WinHttpGetDefaultProxyConfiguration 関数 (winhttp.h)

WinHttpGetDefaultProxyConfiguration 関数は、レジストリから既定の WinHTTP プロキシ構成を取得します。

構文

WINHTTPAPI BOOL WinHttpGetDefaultProxyConfiguration(
  [in, out] WINHTTP_PROXY_INFO *pProxyInfo
);

パラメーター

[in, out] pProxyInfo

既定のプロキシ構成を受け取 るWINHTTP_PROXY_INFO 型の変数へのポインター。

戻り値

成功した場合は TRUE 、それ以外の場合 は FALSE を 返します。 特定のエラー メッセージを取得するには、 GetLastError を呼び出します。 返されるエラー コードは次のとおりです。

エラー コード 説明
ERROR_WINHTTP_INTERNAL_ERROR
内部エラーが発生しました。
ERROR_NOT_ENOUGH_MEMORY
要求された操作を完了するのに十分なメモリが使用できませんでした。 (Windows エラー コード)

注釈

WinHttpGetDefaultProxyConfiguration は、 WinHttpSetDefaultProxyConfiguration または ProxyCfg.exeによって設定されたプロキシ構成を取得します。

WinHttpSetOption を呼び出し、WINHTTP_OPTION_PROXY フラグを指定することで、WinHTTP セッションの既定のプロキシ構成をオーバーライドできます。
WinHttpGetDefaultProxyConfiguration は、現在のセッションの構成を取得しません。 レジストリで指定された構成を取得します。

レジストリにプロキシ サーバーの一覧が含まれている場合、pProxyInfodwAccessType メンバーは WINHTTP_ACCESS_TYPE_NAMED_PROXY に設定されます。 それ以外の場合は、 WINHTTP_ACCESS_TYPE_NO_PROXYに設定されます。

WinHttpGetDefaultProxyConfiguration、pProxyInfo の文字列メンバーにメモリを割り当てます。 このメモリを解放するには、 GlobalFree を呼び出します。

WinHTTP が非同期モードで使用されている場合 (つまり、WinHttpOpenWINHTTP_FLAG_ASYNCが設定されている場合) でも、この関数は同期的に動作します。 戻り値は成功または失敗を示します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

メモ Windows XP と Windows 2000 については、「WinHTTP スタート ページ」 の「ランタイム要件 」セクションを参照してください。
 

次のコード例は、レジストリから既定のプロキシ構成を取得する方法を示しています。

    WINHTTP_PROXY_INFO proxyInfo;

    // Retrieve the default proxy configuration.
    WinHttpGetDefaultProxyConfiguration( &proxyInfo );

    // Display the proxy servers and free memory 
    // allocated to this string.
    if (proxyInfo.lpszProxy != NULL)
    {
        printf("Proxy server list: %S\n", proxyInfo.lpszProxy);
        GlobalFree( proxyInfo.lpszProxy );
    }

    // Display the bypass list and free memory 
    // allocated to this string.
    if (proxyInfo.lpszProxyBypass != NULL)
    {
        printf("Proxy bypass list: %S\n", proxyInfo.lpszProxyBypass);
        GlobalFree( proxyInfo.lpszProxyBypass );
    }

要件

要件
サポートされている最小のクライアント Windows XP、Windows 2000 Professional SP3 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003、Windows 2000 Server SP3 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winhttp.h
Library Winhttp.lib
[DLL] Winhttp.dll
再頒布可能パッケージ Windows XP および Windows 2000 では、WinHTTP 5.0 およびインターネット エクスプローラー 5.01 以降がインストールされています。

こちらもご覧ください

プロキシ構成ツールProxyCfg.exe

WinHTTP バージョン

WinHttpSetDefaultProxyConfiguration