Fungsi ParseURLA (shlwapi.h)
Melakukan penguraian URL yang belum mendasar.
Sintaks
LWSTDAPI ParseURLA(
[in] LPCSTR pcszURL,
[in, out] PARSEDURLA *ppu
);
Parameter
[in] pcszURL
Jenis: LPCTSTR
Penunjuk ke string yang dihentikan null yang berisi URL yang akan diurai.
[in, out] ppu
Jenis: PARSEDURL*
Penunjuk ke struktur PARSEDURL yang menerima hasil yang diurai. Aplikasi panggilan harus mengatur anggota cbSize struktur ke ukuran struktur sebelum memanggil ParseURL.
Nilai kembali
Jenis: HRESULT
Mengembalikan S_OK pada keberhasilan, atau kode kesalahan COM jika tidak. Fungsi mengembalikan URL_E_INVALID_SYNTAX (ditentukan dalam Intshcut.h) jika string tidak dapat diurai sebagai URL.
Keterangan
Penguraian yang dilakukan oleh ParseURL terbilang belum jelas. Untuk penguraian URL yang lebih canggih, gunakan InternetCrackUrl.
Contoh
Aplikasi konsol sampel ini menggunakan ParseURL untuk mengurai beberapa URL sederhana.
#include <windows.h>
#include <shlwapi.h>
#include <stdio.h>
#include <tchar.h>
void sample(LPCTSTR pcszUrl)
{
PARSEDURL pu;
pu.cbSize = sizeof(pu);
HRESULT hr = ParseURL(pcszUrl, &pu);
_tprintf(TEXT("ParseURL(%s) returned 0x%08x\n"), pcszUrl, hr);
if (SUCCEEDED(hr)) {
_tprintf(TEXT("Protocol = %.*s\n"), pu.cchProtocol, pu.pszProtocol);
_tprintf(TEXT("Suffix = %.*s\n"), pu.cchSuffix, pu.pszSuffix);
_tprintf(TEXT("Scheme = %d\n"), pu.nScheme);
_tprintf(TEXT("\n"));
}
}
int __cdecl main()
{
sample(TEXT("http://msdn.microsoft.com/vstudio/"));
sample(TEXT("mailto:someone@example.com"));
sample(TEXT("file://C:\\AUTOEXEC.BAT"));
sample(TEXT("C:\\AUTOEXEC.BAT"));
return 0;
}
OUTPUT:
---------
ParseURL(http://msdn.microsoft.com/vstudio/) returned 0x00000000
Protocol = http
Suffix = //msdn.microsoft.com/vstudio/
Scheme = 2
ParseURL(mailto:someone@example.com) returned 0x00000000
Protocol = mailto
Suffix = someone@example.com
Scheme = 4
ParseURL(file://C:\AUTOEXEC.BAT) returned 0x00000000
Protocol = file
Suffix = C:\AUTOEXEC.BAT
Scheme = 9
ParseURL(C:\AUTOEXEC.BAT) returned 0x80041001
Catatan
Header shlwapi.h mendefinisikan ParseURL sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | shlwapi.h |
DLL | Shlwapi.dll (versi 6.0.1 atau yang lebih baru) |