ATL HTTP-Hilfsfunktionen
Diese Funktionen unterstützen die Manipulation von URLs.
Funktion | Beschreibung |
---|---|
AtlCanonicalizeUrl | Kanonisiert eine URL, die das Konvertieren unsicherer Zeichen und Leerzeichen in Escapesequenzen umfasst. |
AtlCombineUrl | Kombiniert eine Basis-URL und eine relative URL in einer einzelnen, kanonischen URL. |
AtlEscapeUrl | Konvertiert alle unsicheren Zeichen in Escapesequenzen. |
AtlGetDefaultUrlPort | Ruft die Standardportnummer ab, die einem bestimmten Internetprotokoll oder Schema zugeordnet ist. |
AtlIsUnsafeUrlChar | Bestimmt, ob ein Zeichen für die Verwendung in einer URL sicher ist. |
AtlUnescapeUrl | Konvertiert Escapezeichen zurück in ihre ursprünglichen Werte. |
RGBToHtml | Konvertiert einen COLORREF-Wert in den HTML-Text, der diesem Farbwert entspricht. |
SystemTimeToHttpDate | Mit dieser Funktion konvertieren Sie die Systemzeit in eine Zeichenfolge, deren Format sich für die Verwendung in HTTP-Headern eignet. |
Anforderungen
Header: atlutil.h
AtlCanonicalizeUrl
Mit dieser Funktion wird eine URL kanonisiert, wobei unsichere Zeichen und Leerzeichen in Escapesequenzen konvertiert werden.
inline BOOL AtlCanonicalizeUrl(
LPCTSTR szUrl,
LPTSTR szCanonicalized,
DWORD* pdwMaxLength,
DWORD dwFlags = 0) throw();
Parameter
szUrl
Die url, die kanonischisiert werden soll.
szCanonicalized
Vom Aufrufer zugewiesener Puffer zum Empfangen der kanonisierten URL.
pdwMaxLength
Zeiger auf eine Variable, die die Länge in Zeichen von szCanonicalized enthält. Wenn die Funktion erfolgreich ist, empfängt die Variable die Anzahl der Zeichen, die in den Puffer geschrieben wurden, einschließlich des endenden Nullzeichens. Wenn die Funktion fehlschlägt, empfängt die Variable die erforderliche Länge in Byte des Puffers, einschließlich des Leerraums für das endende Nullzeichen.
dwFlags
ATL_URL Flags, die das Verhalten dieser Funktion steuern.
ATL_URL_BROWSER_MODE Codiert oder decodiert keine Zeichen nach "#" oder "?", und entfernt nach "?" keine nachgestellten Leerzeichen. Wenn dieser Wert nicht angegeben ist, wird die gesamte URL codiert und nachfolgende Leerzeichen entfernt.
ATL_URL_DECODE Konvertiert alle %XX-Sequenzen in Zeichen, einschließlich Escapesequenzen, bevor die URL analysiert wird.
ATL_URL_ENCODE_PERCENT Codiert alle Prozentzeichen. Standardmäßig werden Prozentzeichen nicht codiert.
ATL_URL_ENCODE_SPACES_ONLY Codiert nur Leerzeichen.
ATL_URL_ESCAPE konvertiert alle Escapesequenzen (%XX) in die entsprechenden Zeichen.
ATL_URL_NO_ENCODE Konvertiert unsichere Zeichen nicht in Escapesequenzen.
ATL_URL_NO_META Entfernt keine Metasequenzen (z. B. "." und "..") aus der URL.
Rückgabewert
Gibt WAHR für Erfolg, FALSE bei Fehler zurück.
Hinweise
Verhält sich wie die aktuelle Version von InternetCanonicalizeUrl, erfordert jedoch keine Installation von WinInet oder Internet Explorer.
AtlCombineUrl
Mit dieser Funktion wird eine Basis-URL und eine relative URL zu einer einzelnen kanonischen URL zusammengefasst.
inline BOOL AtlCombineUrl(
LPCTSTR szBaseUrl,
LPCTSTR szRelativeUrl,
LPTSTR szBuffer,
DWORD* pdwMaxLength,
DWORD dwFlags = 0) throw();
Parameter
szBaseUrl
Die Basis-URL.
szRelativeUrl
Die URL relativ zur Basis-URL.
szBuffer
Vom Aufrufer zugewiesener Puffer zum Empfangen der kanonisierten URL.
pdwMaxLength
Zeiger auf eine Variable, die die Länge in Zeichen von szBuffer enthält. Wenn die Funktion erfolgreich ist, empfängt die Variable die Anzahl der Zeichen, die in den Puffer geschrieben wurden, einschließlich des endenden Nullzeichens. Wenn die Funktion fehlschlägt, empfängt die Variable die erforderliche Länge in Byte des Puffers, einschließlich des Leerraums für das endende Nullzeichen.
dwFlags
Flags steuern das Verhalten dieser Funktion. Siehe AtlCanonicalizeUrl.
Rückgabewert
Gibt WAHR für Erfolg, FALSE bei Fehler zurück.
Hinweise
Verhält sich wie die aktuelle Version von InternetCombineUrl, erfordert jedoch keine Installation von WinInet oder Internet Explorer.
AtlEscapeUrl
Mit dieser Funktion werden alle unsicheren Zeichen in Escapesequenzen konvertiert.
inline BOOL AtlEscapeUrl(
LPCSTR szStringIn,
LPSTR szStringOut,
DWORD* pdwStrLen,
DWORD dwMaxLength,
DWORD dwFlags = 0) throw();
inline BOOL AtlEscapeUrl(
LPCWSTR szStringIn,
LPWSTR szStringOut,
DWORD* pdwStrLen,
DWORD dwMaxLength,
DWORD dwFlags = 0) throw();
Parameter
lpszStringIn
Die zu konvertierende URL.
lpszStringOut
Vom Aufrufer zugewiesener Puffer, in den die konvertierte URL geschrieben wird.
pdwStrLen
Zeiger auf eine DWORD-Variable. Wenn die Funktion erfolgreich ist, empfängt pdwStrLen die Anzahl der Zeichen, die in den Puffer geschrieben wurden, einschließlich des endenden Nullzeichens. Wenn die Funktion fehlschlägt, empfängt die Variable die erforderliche Länge in Byte des Puffers, einschließlich des Leerraums für das endende Nullzeichen. Wenn Sie die breite Zeichenversion dieser Methode verwenden, empfängt pdwStrLen die Anzahl der erforderlichen Zeichen, nicht die Anzahl der Bytes.
dwMaxLength
Die Größe des Puffers lpszStringOut.
dwFlags
ATL_URL Flags, die das Verhalten dieser Funktion steuern. Mögliche Werte finden Sie unter ATLCanonicalizeUrl .
Rückgabewert
Gibt WAHR für Erfolg, FALSE bei Fehler zurück.
AtlGetDefaultUrlPort
Mit dieser Funktion wird die Standardportnummer abgerufen, die einem bestimmten Internetprotokoll oder -schema zugeordnet ist.
inline ATL_URL_PORT AtlGetDefaultUrlPort(ATL_URL_SCHEME m_nScheme) throw();
Parameter
m_nScheme
Der ATL_URL_SCHEME Wert, der das Schema identifiziert, für das Sie die Portnummer abrufen möchten.
Rückgabewert
Die dem angegebenen Schema zugeordnete ATL_URL_PORT oder ATL_URL_INVALID_PORT_NUMBER, wenn das Schema nicht erkannt wird.
AtlIsUnsafeUrlChar
Mit dieser Funktion finden Sie heraus, ob die Verwendung eines bestimmten Zeichens in einer URL sicher ist.
inline BOOL AtlIsUnsafeUrlChar(char chIn) throw();
Parameter
Kinn
Das Zeichen, das auf Sicherheit geprüft werden soll.
Rückgabewert
Gibt WAHR zurück, wenn das Eingabezeichen unsicher ist, andernfalls FALSE.
Hinweise
Zeichen, die nicht in URLs verwendet werden sollen, können mithilfe dieser Funktion getestet und mit AtlCanonicalizeUrl konvertiert werden.
AtlUnescapeUrl
Mit dieser Funktion können Sie Escapezeichen zurück in ihre ursprünglichen Werte konvertieren.
inline BOOL AtlUnescapeUrl(
LPCSTR szStringIn,
LPSTR szStringOut,
LPDWORD pdwStrLen,
DWORD dwMaxLength) throw();
inline BOOL AtlUnescapeUrl(
LPCWSTR szStringIn,
LPWSTR szStringOut,
LPDWORD pdwStrLen,
DWORD dwMaxLength) throw();
Parameter
lpszStringIn
Die zu konvertierende URL.
lpszStringOut
Vom Aufrufer zugewiesener Puffer, in den die konvertierte URL geschrieben wird.
pdwStrLen
Zeiger auf eine DWORD-Variable. Wenn die Funktion erfolgreich ist, empfängt die Variable die Anzahl der Zeichen, die in den Puffer geschrieben wurden, einschließlich des endenden Nullzeichens. Wenn die Funktion fehlschlägt, empfängt die Variable die erforderliche Länge in Byte des Puffers, einschließlich des Leerraums für das endende Nullzeichen.
dwMaxLength
Die Größe des Puffers lpszStringOut.
Rückgabewert
Gibt WAHR für Erfolg, FALSE bei Fehler zurück.
Hinweise
Kehrt den von AtlEscapeUrl angewendeten Konvertierungsprozess um.
RGBToHtml
Konvertiert einen COLORREF-Wert in den HTML-Text, der diesem Farbwert entspricht.
bool inline RGBToHtml(
COLORREF color,
LPTSTR pbOut,
long nBuffer);
Parameter
color
Ein RGB-Farbwert.
pbOut
Vom Aufrufer zugewiesener Puffer zum Empfangen des Texts für den HTML-Farbwert. Der Puffer muss platz für mindestens 8 Zeichen einschließlich Leerzeichen für den Null-Terminator aufweisen.
nBuffer
Die Größe in Byte des Puffers (einschließlich Leerzeichen für den Null-Endator).
Rückgabewert
Gibt WAHR für Erfolg, FALSE bei Fehler zurück.
Hinweise
Ein HTML-Farbwert ist ein Nummernzeichen, gefolgt von einem 6-stelligen Hexadezimalwert mit 2 Ziffern für jede der roten, grünen und blauen Komponenten der Farbe (z. B. #FFFFFF weiß).
SystemTimeToHttpDate
Mit dieser Funktion konvertieren Sie die Systemzeit in eine Zeichenfolge, deren Format sich für die Verwendung in HTTP-Headern eignet.
inline void SystemTimeToHttpDate(
const SYSTEMTIME& st,
CStringA& strTime);
Parameter
st
Die Systemzeit, die als HTTP-Formatzeichenfolge abgerufen werden soll.
strTime
Ein Verweis auf eine Zeichenfolgenvariable, um die IN RFC 2616 (https://www.ietf.org/rfc/rfc2616.txt) und RFC 1123 (https://www.ietf.org/rfc/rfc1123.txt) definierte HTTP-Datumszeit zu empfangen.
Siehe auch
Konzepte
ATL-COM-Desktop-Komponenten
InternetCanonicalizeUrl