InternetCrackUrlA-Funktion (wininet.h)
Knackt eine URL in ihre Komponententeile.
Syntax
BOOL InternetCrackUrlA(
[in] LPCSTR lpszUrl,
[in] DWORD dwUrlLength,
[in] DWORD dwFlags,
[in, out] LPURL_COMPONENTSA lpUrlComponents
);
Parameter
[in] lpszUrl
Zeiger auf eine Zeichenfolge, die die kanonische URL enthält, die geknackt werden soll.
[in] dwUrlLength
Größe der lpszUrl-Zeichenfolge in TCHARs oder null, wenn lpszUrl eine ASCIIZ-Zeichenfolge ist.
[in] dwFlags
Steuert den Vorgang. Dieser Parameter kann einen der folgenden Werte annehmen.
Wert | Bedeutung |
---|---|
|
Konvertiert codierte Zeichen wieder in die normale Form. Dies kann nur verwendet werden, wenn der Benutzer Puffer in der URL_COMPONENTS-Struktur bereitstellt, in die die Komponenten kopiert werden sollen. |
|
Konvertiert alle Escapesequenzen (%xx) in die entsprechenden Zeichen. Dies kann nur verwendet werden, wenn der Benutzer Puffer in der URL_COMPONENTS-Struktur bereitstellt, in die die Komponenten kopiert werden sollen. |
[in, out] lpUrlComponents
Zeiger auf eine URL_COMPONENTS-Struktur , die die URL-Komponenten empfängt.
Rückgabewert
Gibt TRUE zurück, wenn die Funktion erfolgreich ist, oder andernfalls FALSE . Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die erforderlichen Komponenten werden durch Member der URL_COMPONENTS-Struktur angegeben. Jede Komponente verfügt über einen Zeiger auf den Wert und einen Member, der die Länge des gespeicherten Werts speichert. Wenn sowohl der Wert als auch die Länge für eine Komponente gleich 0 sind, wird diese Komponente nicht zurückgegeben. Windows Vista und höher: Wenn der Zeiger auf den Wert der Komponente NULL ist und der Wert des entsprechenden Längenelements ungleich null ist, wird die Adresse des ersten Zeichens der entsprechenden Komponente in der lpszUrl-Zeichenfolge im Zeiger gespeichert, und die Länge der Komponente wird im Längenelement gespeichert.
Wenn der Zeiger die Adresse des vom Benutzer bereitgestellten Puffers enthält, muss der Längenmember die Größe des Puffers enthalten. InternetCrackUrl kopiert die Komponente in den Puffer, und der Längenmember wird auf die Länge der kopierten Komponente festgelegt, minus 1 für den nachgestellten Zeichenfolgenabschluss.
Damit InternetCrackUrl ordnungsgemäß funktioniert, muss die Größe der URL_COMPONENTS-Struktur in Bytes im dwStructSize-Element gespeichert werden.
Hinweis Verwenden Sie InternetCrackUrl nicht für "file://"-URLs, die Leerzeichen enthalten, da der wert, der im dwUrlPathLength-Element der URL_COMPONENTS Struktur zurückgegeben wird, auf die von lpUrlComponents verwiesen wird, zu groß ist. Dies ist jedoch nur bei urLs von "file://" der Fall, die Leerzeichen enthalten.
Wie alle anderen Aspekte der WinINet-API kann diese Funktion nicht sicher innerhalb von DllMain oder den Konstruktoren und Destruktoren globaler Objekte aufgerufen werden.
Hinweis
Der wininet.h-Header definiert InternetCrackUrl als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wininet.h |
Bibliothek | Wininet.lib |
DLL | Wininet.dll |