InternetCreateUrl URLの各構成要素からURLを作成

Cの宣言:

BOOL InternetCreateUrl(
	IN LPURL_COMPONENTS UrlComponents,
	IN DWORD Flags,
	OUT LPSTR Url,
	IN OUT LPDWORD UrlSize);

説明:

UrlComponentsで指定されたURLの各構成要素を結合してURLを作成し、結果をUrlに返す。

引数の意味は以下の通り。
UrlComponents URLの各構成要素。
Flags 結合の方法を指定するビットマスク値。後述の表を参照。
Url 作成結果のURL
UrlSize Urlのサイズ。関数の実行後、Urlに設定されたデータのサイズまたは必要なサイズが返される。

Flags指定可能な値は、以下のフラグの組み合わせである。
ICU_ESCAPE 特殊文字をエスケープシーケンスに変換する。
ICU_USERNAME ユーザ名追加時に、ログイン時に指定されたユーザ名を使用する。

戻り値は、関数の実行に成功したか否かを表す真偽値である。

Cのサンプル:

CreateUrlを使用することにより、URLの各構成要素を結合して一つのURLにする。
void CreateUrl()
{
	URL_COMPONENTS uc;
	char Url[1000];
	DWORD UrlSize = 1000;

	ZeroMemory(&uc, sizeof(uc));

	uc.dwStructSize = sizeof(uc);
	uc.lpszScheme = NULL;
	uc.nScheme = INTERNET_SCHEME_HTTP;
	uc.lpszHostName = "www.cool.ne.jp";
	uc.nPort = 8080;
	uc.lpszUserName = "hoge";
	uc.lpszPassword = "henyo";
	uc.lpszUrlPath = "/masahiro/sample.html";
	uc.lpszExtraInfo = NULL;

	InternetCreateUrl(&uc, 0, Url, &UrlSize);

	printf("%s\n", Url);
}

(original text:1999/04/19 更新)

本ドキュメントの内容は保証しません。本ドキュメントによって生じた結果について、一切の責任を負いません。