Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
Létrehoz és inicializál egy vagy több egyidejű internetes munkamenetet, és szükség esetén leírja a proxykiszolgálóval való kapcsolatot.
Szemantika
class CInternetSession : public CObject
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
CInternetSession::CInternetSession |
Egy CInternetSession objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
CInternetSession::Close |
Az internetkapcsolat bezárása az internetes munkamenet leállásakor. |
CInternetSession::EnableStatusCallback |
Állapotvisszahívási rutint hoz létre. |
CInternetSession::GetContext |
Az internetkapcsolat bezárása az internetes munkamenet leállásakor. |
CInternetSession::GetCookie |
Cookie-kat ad vissza a megadott URL-címhez és annak összes szülő URL-címéhez. |
CInternetSession::GetCookieLength |
Lekéri a pufferben tárolt cookie hosszát meghatározó változót. |
CInternetSession::GetFtpConnection |
Megnyitja az FTP-munkamenetet egy kiszolgálóval. Naplózza a felhasználót. |
CInternetSession::GetGopherConnection |
Megnyit egy gopher-kiszolgálót egy olyan alkalmazás számára, amely megpróbál megnyitni egy kapcsolatot. |
CInternetSession::GetHttpConnection |
Megnyit egy HTTP-kiszolgálót egy olyan alkalmazás számára, amely megpróbál megnyitni egy kapcsolatot. |
CInternetSession::OnStatusCallback |
Frissíti a művelet állapotát, ha engedélyezve van az állapotvisszahívás. |
CInternetSession::OpenURL |
Elemzi és megnyitja az URL-címet. |
CInternetSession::SetCookie |
Beállít egy cookie-t a megadott URL-címhez. |
CInternetSession::SetOption |
Beállítja az internetes munkamenet beállításait. |
Nyilvános operátorok
| Név | Description |
|---|---|
CInternetSession::operator HINTERNET |
Az aktuális internetes munkamenet leírója. |
Megjegyzések
Ha az internetkapcsolatot egy alkalmazás időtartamára fenn kell tartani, létrehozhat egy CInternetSession tagot az osztályból CWinApp.
Miután létrehozott egy internetes munkamenetet, meghívhatja OpenURL.
CInternetSession majd elemzi az URL-címet a globális függvény AfxParseURLmeghívásával. A protokoll típusától CInternetSession függetlenül értelmezi és kezeli az URL-címet. Képes kezelni a "file://" URL-erőforrással azonosított helyi fájlokra vonatkozó kéréseket.
OpenURL egy objektumra CStdioFile mutató mutatót ad vissza, ha az átadott név egy helyi fájl.
Ha megnyit egy URL-címet egy internetes kiszolgálón, OpenURLelolvashatja a webhely adatait. Ha szolgáltatásspecifikus (például HTTP, FTP vagy gopher) műveleteket szeretne végrehajtani egy kiszolgálón található fájlokon, létre kell hoznia a megfelelő kapcsolatot a kiszolgálóval. Ha egy adott típusú kapcsolatot közvetlenül egy adott szolgáltatáshoz szeretne megnyitni, használja az alábbi tagfüggvények egyikét:
GetGopherConnectionegy gopher szolgáltatáshoz való kapcsolat megnyitásához.GetHttpConnectionhttp-szolgáltatáshoz való kapcsolat megnyitásához.GetFtpConnectionftp-szolgáltatáshoz való csatlakozás megnyitásához.
SetOption Lehetővé teszi a munkamenet lekérdezési beállításait, például az időtúllépési értékeket, az újrapróbálkozések számát stb.
CInternetSession tagfüggvények SetCookie, GetCookieés GetCookieLength biztosítják a Win32 cookie-adatbázis kezeléséhez szükséges eszközöket, amelyeken keresztül a kiszolgálók és szkriptek állapotinformációkat kezelnek az ügyfél-munkaállomásról.
Az alapvető internetes programozási feladatokról további információt az Internet első lépései című cikkben talál. WinInet Az MFC-osztályok WinInet használatával kapcsolatos általános információkért tekintse meg az Internet Programozás a következővel WinInetcímű cikket.
Megjegyzés:
CInternetSession
AfxThrowNotSupportedException nem támogatott szolgáltatástípusok esetén. Jelenleg csak a következő szolgáltatástípusok támogatottak: FTP, HTTP, gopher és fájl.
Öröklési hierarchia
CObject
CInternetSession
Requirements
Fejléc:afxinet.h
CInternetSession::CInternetSession
Ez a tagfüggvény egy CInternetSession objektum létrehozásakor lesz meghívva.
CInternetSession(
LPCTSTR pstrAgent = NULL,
DWORD_PTR dwContext = 1,
DWORD dwAccessType = PRE_CONFIG_INTERNET_ACCESS,
LPCTSTR pstrProxyName = NULL,
LPCTSTR pstrProxyBypass = NULL,
DWORD dwFlags = 0);
Paraméterek
pstrAgent
Egy olyan sztringre mutató mutató, amely azonosítja az internetfüggvényeket hívó alkalmazás vagy entitás nevét (például "Microsoft Internet Browser"). Ha pstrAgent ez NULL (az alapértelmezett), a keretrendszer meghívja a globális függvényt AfxGetAppName, amely egy null értékű sztringet ad vissza, amely egy alkalmazás nevét tartalmazza. Egyes protokollok ezzel a sztringgel azonosítják az alkalmazást a kiszolgálón.
dwContext
A művelet környezeti azonosítója.
dwContext azonosítja a művelet által visszaadott CInternetSession::OnStatusCallbackállapotadatokat. Az alapértelmezett érték 1; azonban explicit módon hozzárendelhet egy adott környezeti azonosítót a művelethez. Az objektum és az általa végzett munka ehhez a környezeti azonosítóhoz lesz társítva.
dwAccessType
A szükséges hozzáférés típusa. A következők érvényes értékek, amelyek közül pontosan egy adható meg:
INTERNET_OPEN_TYPE_PRECONFIGCsatlakozás a beállításjegyzék előre konfigurált beállításaival. Ez a hozzáférési típus van alapértelmezettként beállítva. TIS-proxyn keresztüli csatlakozáshoz állítsa bedwAccessTypeezt az értéket, majd állítsa be a beállításjegyzéket megfelelően.INTERNET_OPEN_TYPE_DIRECTCsatlakozzon közvetlenül az internethez.INTERNET_OPEN_TYPE_PROXYCsatlakozás CERN-proxyn keresztül.
A különböző típusú proxykkal való csatlakozással kapcsolatos információkért tekintse meg egy tipikus FTP-ügyfélalkalmazás lépéseit.
pstrProxyName
Az előnyben részesített CERN-proxy neve, ha dwAccessType be van állítva INTERNET_OPEN_TYPE_PROXY. Az alapértelmezett érték a NULL.
pstrProxyBypass
Mutató egy sztringre, amely a kiszolgálócímek választható listáját tartalmazza. Ezek a címek proxyhozzáférés használata esetén megkerülhetők. Ha értéket NULL ad meg, a rendszer beolvassa a megkerülő listát a beállításjegyzékből. Ez a paraméter csak akkor értelmezhető, ha dwAccessType be van állítva.INTERNET_OPEN_TYPE_PROXY
dwFlags
Különböző gyorsítótárazási beállításokat jelez. Az alapértelmezett érték 0. A lehetséges értékek a következők:
INTERNET_FLAG_DONT_CACHENe gyorsítótárazza az adatokat helyileg vagy átjárókiszolgálókon.INTERNET_FLAG_OFFLINEA letöltési műveletek csak az állandó gyorsítótáron keresztül teljesülnek. Ha az elem nem létezik a gyorsítótárban, a rendszer egy megfelelő hibakódot ad vissza. Ez a jelző kombinálható a bitenkénti "vagy" (|) operátorral.
Megjegyzések
CInternetSession az alkalmazás által hívott első internetes függvény. Inicializálja a belső adatstruktúrákat, és előkészíti az alkalmazás jövőbeli hívásait.
Ha nem nyitható meg internetkapcsolat, CInternetSession a rendszer egy AfxThrowInternetException.
Example
Lásd a példát a CFtpFileFind.
CInternetSession::Close
Hívja meg ezt a tagfüggvényt, ha az alkalmazás befejezte az CInternetSession objektum használatát.
virtual void Close();
Example
Lásd a példát a CFtpFileFind.
CInternetSession::EnableStatusCallback
Hívja meg ezt a tagfüggvényt az állapotvisszahívás engedélyezéséhez.
BOOL EnableStatusCallback(BOOL bEnable = TRUE);
Paraméterek
bEnable
Megadja, hogy a visszahívás engedélyezve van-e vagy le van-e tiltva. Az alapértelmezett érték a TRUE.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0. Ha a hívás sikertelen, a dobott CInternetException objektum vizsgálatával állapítsa meg a hiba okát.
Megjegyzések
Az állapotvisszahívás kezelésekor az alkalmazás állapotsorában megadhatja a művelet előrehaladását (például a név feloldását, a kiszolgálóhoz való csatlakozást stb.). A művelet állapotának megjelenítése különösen fontos hosszú távú művelet esetén.
Mivel a visszahívások a kérés feldolgozása során történnek, az alkalmazásnak a lehető legkevesebb időt kell töltenie a visszahívásban, hogy megakadályozza a hálózat adatforgalmának romlását. Ha például egy párbeszédpanelt egy visszahívásban helyez el, az olyan hosszú művelet lehet, hogy a kiszolgáló leállítja a kérést.
Az állapotvisszahívás nem távolítható el mindaddig, amíg a visszahívások függőben vannak.
A műveletek aszinkron kezeléséhez saját szálat kell létrehoznia, vagy MFC nélkül kell használnia a WinInet-függvényeket.
CInternetSession::GetContext
Hívja meg ezt a tagfüggvényt egy adott alkalmazás-munkamenet környezeti értékének lekéréséhez.
DWORD_PTR GetContext() const;
Visszaadott érték
Az alkalmazás által definiált környezeti azonosító.
Megjegyzések
OnStatusCallback az adott alkalmazás állapotának jelentéséhez visszaadott GetContext környezeti azonosítót használja. Ha például egy felhasználó aktivál egy olyan internetes kérést, amely állapotinformációkat ad vissza, az állapotvisszahívás a környezeti azonosítóval jelenti az adott kérés állapotát. Ha a felhasználó két külön internetes kérést aktivál, amelyek mindegyike állapotinformációkat ad vissza, OnStatusCallback a környezeti azonosítók használatával adja vissza a hozzájuk tartozó kérések állapotát. Ennek következtében a környezetazonosító az összes állapotvisszahívási művelethez használatos, és a munkamenethez van társítva a munkamenet végéig.
Az aszinkron műveletekről további információt az internet első lépései: WinInet című cikkben talál.
CInternetSession::GetCookie
Ez a tagfüggvény implementálja a Win32 függvény InternetGetCookieviselkedését a Windows SDK-ban leírtak szerint.
static BOOL GetCookie(
LPCTSTR pstrUrl,
LPCTSTR pstrCookieName,
LPTSTR pstrCookieData,
DWORD dwBufLen);
static BOOL GetCookie(
LPCTSTR pstrUrl,
LPCTSTR pstrCookieName,
CString& strCookieData);
Paraméterek
pstrUrl
Az URL-címet tartalmazó sztringre mutató mutató.
pstrCookieName
A megadott URL-címre mutató mutató a cookie nevét tartalmazó sztringre.
pstrCookieData
Az első túlterhelés során egy mutató egy sztringre, amely a cookie-adatokat fogadó puffer címét tartalmazza. Ez az érték lehet NULL. A második túlterhelésben egy objektumra mutató CString hivatkozás a cookie-adatok fogadásához.
dwBufLen
A puffer méretét pstrCookieData meghatározó változó. Ha a függvény sikeres, a puffer megkapja a pufferbe pstrCookieData másolt adatok mennyiségét. Ha pstrCookieData igen NULL, ez a paraméter kap egy értéket, amely meghatározza az összes cookie-adat másolásához szükséges puffer méretét.
Visszaadott érték
TRUE Sikeres vagy FALSE más módon visszaadott értéket. Ha a hívás sikertelen, hívja meg a Win32 függvényt GetLastError a hiba okának megállapításához. A következő hibaértékek érvényesek:
ERROR_NO_MORE_ITEMSNincs cookie a megadott URL-címhez és az összes szülőhöz.ERROR_INSUFFICIENT_BUFFERAz átadottdwBufLenérték nem elegendő az összes cookie-adat másolásához. A visszaadottdwBufLenérték az összes adat lekéréséhez szükséges puffer mérete.
Megjegyzések
A második túlterhelés során az MFC lekéri a cookie-adatokat a megadott CString objektumba.
CInternetSession::GetCookieLength
Hívja meg ezt a tagfüggvényt a pufferben tárolt cookie hosszának lekéréséhez.
static DWORD GetCookieLength(
LPCTSTR pstrUrl,
LPCTSTR pstrCookieName);
Paraméterek
pstrUrl
Az URL-címet tartalmazó sztringre mutató mutató
pstrCookieName
A cookie nevét tartalmazó sztringre mutató mutató.
Visszaadott érték
A DWORD pufferben tárolt cookie hosszát jelző érték. Nulla, ha nincs olyan cookie, amely pstrCookieName a megadott néven szerepelne.
Megjegyzések
Ezt az értéket használja a GetCookierendszer.
CInternetSession::GetFtpConnection
A tagfüggvény meghívása FTP-kapcsolat létrehozásához és egy objektum mutatójának lekéréséhez CFtpConnection .
CFtpConnection* GetFtpConnection(
LPCTSTR pstrServer,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
BOOL bPassive = FALSE);
Paraméterek
pstrServer
Az FTP-kiszolgáló nevét tartalmazó sztringre mutató mutató.
pstrUserName
Mutasson egy null értékű sztringre, amely megadja a bejelentkezni kívánt felhasználó nevét. Ha NULL, az alapértelmezett név névtelen.
pstrPassword
Egy null értékű sztringre mutató mutató, amely megadja a bejelentkezéshez használni kívánt jelszót. Ha mindkettőpstrPassword, NULLakkor pstrUserName az alapértelmezett névtelen jelszó a felhasználó e-mail-neve. Ha pstrPassword ( NULL vagy üres sztring), de pstrUserName nem NULL, akkor üres jelszót használ. Az alábbi táblázat a következő négy lehetséges beállítás viselkedését pstrUserNamepstrPasswordismerteti:
pstrUserName |
pstrPassword |
FTP-kiszolgálónak küldött felhasználónév | FTP-kiszolgálónak küldött jelszó |
|---|---|---|---|
NULL vagy " " |
NULL vagy " " |
"anonymous" |
A felhasználó e-mail-címe |
Nem sztringNULL |
NULL vagy " " |
pstrUserName |
" " |
NULL |
Nem sztringNULL |
ERROR | ERROR |
Nem sztringNULL |
Nem sztringNULL |
pstrUserName |
pstrPassword |
nPort
A kiszolgálón használandó TCP/IP-portot azonosító szám.
bPassive
Passzív vagy aktív módot ad meg ehhez az FTP-munkamenethez. Ha be van TRUEállítva, a Win32 API-t dwFlag a következőre állítja INTERNET_FLAG_PASSIVEbe: .
Visszaadott érték
Egy objektumra mutató CFtpConnection mutató. Ha a hívás sikertelen, a dobott CInternetException objektum vizsgálatával állapítsa meg a hiba okát.
Megjegyzések
GetFtpConnection egy FTP-kiszolgálóhoz csatlakozik, és egy objektumra mutató mutatót CFTPConnection hoz létre és ad vissza. Nem hajt végre semmilyen konkrét műveletet a kiszolgálón. Ha például fájlokat szeretne olvasni vagy írni, ezeket a műveleteket külön lépésekben kell végrehajtania. Az osztályokat CFtpConnection és CFtpFileFind a fájlok keresésével, a fájlok megnyitásával, valamint a fájlok olvasásával és írásával kapcsolatos információkat tekintheti meg. A gyakori FTP-kapcsolati feladatok végrehajtásának lépéseit a WinInettel végzett internetes programozás című cikkben találja.
Example
Lásd a példát a CFtpFileFind.
CInternetSession::GetGopherConnection
Hívja meg ezt a tagfüggvényt egy új gopher-kapcsolat létrehozásához és egy objektum mutatójának lekéréséhez CGopherConnection .
CGopherConnection* GetGopherConnection(
LPCTSTR pstrServer,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);
Paraméterek
pstrServer
Mutató a gopher-kiszolgáló nevét tartalmazó sztringre.
pstrUserName
A felhasználónevet tartalmazó sztringre mutató mutató.
pstrPassword
A hozzáférési jelszót tartalmazó sztringre mutató mutató.
nPort
A kiszolgálón használandó TCP/IP-portot azonosító szám.
Visszaadott érték
Egy objektumra mutató CGopherConnection mutató. Ha a hívás sikertelen, a dobott CInternetException objektum vizsgálatával állapítsa meg a hiba okát.
Megjegyzések
GetGopherConnection egy gopher-kiszolgálóhoz csatlakozik, és létrehoz és visszaad egy mutatót egy CGopherConnection objektumhoz. Nem hajt végre semmilyen konkrét műveletet a kiszolgálón. Ha például adatokat szeretne olvasni vagy írni, ezeket a műveleteket külön lépésekben kell végrehajtania. A fájlok kereséséről, a fájlok megnyitásáról, valamint CGopherFileFind a fájlok olvasásáról és írásáról az osztályokban CGopherConnectionCGopherFiletájékozódhat. Az FTP-helyek böngészésével kapcsolatos információkért lásd a tagfüggvényt OpenURL. A gyakori gopher-kapcsolati feladatok végrehajtásának lépéseit a WinInettel végzett internetes programozás című cikkben találja.
CInternetSession::GetHttpConnection
A tagfüggvény meghívása HTTP-kapcsolat létrehozásához és egy objektum mutatójának lekéréséhez CHttpConnection .
CHttpConnection* GetHttpConnection(
LPCTSTR pstrServer,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL);
CHttpConnection* GetHttpConnection(
LPCTSTR pstrServer,
DWORD dwFlags,
INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
LPCTSTR pstrUserName = NULL,
LPCTSTR pstrPassword = NULL);
Paraméterek
pstrServer
Mutató a HTTP-kiszolgáló nevét tartalmazó sztringre.
nPort
A kiszolgálón használandó TCP/IP-portot azonosító szám.
pstrUserName
A felhasználónevet tartalmazó sztringre mutató mutató.
pstrPassword
A hozzáférési jelszót tartalmazó sztringre mutató mutató.
dwflags
A jelölők bármilyen kombinációja INTERNET_FLAG_* . Az értékek leírását dwFlags a Megjegyzések szakaszban találjaCHttpConnection::OpenRequest.
Visszaadott érték
Egy objektumra mutató CHttpConnection mutató. Ha a hívás sikertelen, a dobott CInternetException objektum vizsgálatával állapítsa meg a hiba okát.
Megjegyzések
GetHttpConnection HTTP-kiszolgálóhoz csatlakozik, és egy objektumra mutató mutatót CHttpConnection hoz létre és ad vissza. Nem hajt végre semmilyen konkrét műveletet a kiszolgálón. Ha például HTTP-fejlécet szeretne lekérdezni, ezt a műveletet külön lépésként kell végrehajtania. Tekintse meg az osztályokat CHttpConnection és CHttpFile a HTTP-kiszolgálóval létesített kapcsolattal elvégezhető műveletekre vonatkozó információkat. A HTTP-webhelyek böngészésével kapcsolatos információkért lásd a tagfüggvényt OpenURL. A gyakori HTTP-kapcsolati feladatok végrehajtásának lépéseit a WinInettel végzett internetes programozás című cikkben találja.
CInternetSession::OnStatusCallback
Ezt a tagfüggvényt a keretrendszer meghívja, hogy frissítse az állapotvisszahívás engedélyezésének állapotát, és egy művelet függőben van.
virtual void OnStatusCallback(
DWORD_PTR dwContext,
DWORD dwInternetStatus,
LPVOID lpvStatusInformation,
DWORD dwStatusInformationLength);
Paraméterek
dwContext
Az alkalmazás által megadott környezeti érték.
dwInternetStatus
Állapotkód, amely jelzi a visszahívás okát. Tekintse meg a lehetséges értékek táblázatának megjegyzéseit .
lpvStatusInformation
A visszahíváshoz kapcsolódó információkat tartalmazó pufferre mutató mutató.
dwStatusInformationLength
A méret.lpvStatusInformation
Megjegyzések
Először vissza kell hívnia EnableStatusCallback az állapotvisszahívás előnyeit.
A dwInternetStatus paraméter jelzi a végrehajtott műveletet, és meghatározza, hogy mi lesz a tartalma lpvStatusInformation .
dwStatusInformationLength A (2) oszlopban szereplő adatok hosszát lpvStatusInformationjelzi. A következő állapotértékek dwInternetStatus a következőképpen vannak definiálva:
| Érték | Meaning |
|---|---|
INTERNET_STATUS_RESOLVING_NAME |
Keresse meg a benne található lpvStatusInformationnév IP-címét. |
INTERNET_STATUS_NAME_RESOLVED |
A (z) fájlban található lpvStatusInformationnév IP-címét sikeresen megtalálta. |
INTERNET_STATUS_CONNECTING_TO_SERVER |
Csatlakozás a szoftvercsatorna címéhez (SOCKADDR) a következő szerint lpvStatusInformation: . |
INTERNET_STATUS_CONNECTED_TO_SERVER |
Sikeresen csatlakozott a szoftvercsatorna címéhez (SOCKADDR) a következőhöz lpvStatusInformation: . |
INTERNET_STATUS_SENDING_REQUEST |
Az információkérés elküldése a kiszolgálónak. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_REQUEST_SENT |
Sikeresen elküldte az adatkérést a kiszolgálónak. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_RECEIVING_RESPONSE |
Várakozás arra, hogy a kiszolgáló válaszoljon egy kérésre. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_RESPONSE_RECEIVED |
Sikeresen kapott választ a kiszolgálótól. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_CLOSING_CONNECTION |
A kiszolgálóhoz való kapcsolat bezárása. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_CONNECTION_CLOSED |
Sikeresen lezárta a kapcsolatot a kiszolgálóval. A lpvStatusInformation paraméter a következő NULL: . |
INTERNET_STATUS_HANDLE_CREATED |
A Win32 API-függvény InternetConnect azt jelzi, hogy létrehozta az új leírót. Ez lehetővé teszi, hogy az alkalmazás meghívja a Win32 függvényt InternetCloseHandle egy másik szálról, ha a csatlakozás túl sokáig tart. Ezekről a függvényekről további információt a Windows SDK-ben talál. |
INTERNET_STATUS_HANDLE_CLOSING |
Ezt a leíróértéket sikeresen leállítottuk. |
Bírálja felül ezt a tagfüggvényt, hogy valamilyen műveletet igényeljen az állapotvisszahívási rutin végrehajtása előtt.
Megjegyzés:
Az állapotvisszahívások szálállapot-védelmet igényelnek. Ha megosztott kódtárban használja az MFC-t, adja hozzá a következő sort a felülbírálás elejéhez:
AFX_MANAGE_STATE(AfxGetAppModuleState());
Az aszinkron műveletekről további információt az internet első lépései: WinInet című cikkben talál.
CInternetSession::OpenURL
Hívja meg ezt a tagfüggvényt, hogy küldje el a megadott kérést a HTTP-kiszolgálónak, és engedélyezze, hogy az ügyfél további RFC822, MIME vagy HTTP-fejléceket adjon meg a kéréssel együtt.
CStdioFile* OpenURL(
LPCTSTR pstrURL,
DWORD_PTR dwContext = 1,
DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII,
LPCTSTR pstrHeaders = NULL,
DWORD dwHeadersLength = 0);
Paraméterek
pstrURL
Az olvasás megkezdéséhez mutató mutató az URL-cím nevére. Csak a , , ftp:gopher:vagy http: azzal file:kezdődő URL-címek támogatottak. Azt állítja, ha pstrURL igen NULL.
dwContext
Egy alkalmazás által megadott érték, amely a visszahívás során visszaadott leíróval együtt lett átadva.
dwFlags
A kapcsolat kezelését leíró jelzők. Az érvényes jelzőkkel kapcsolatos további információkért lásd a Megjegyzések című témakört. Az érvényes jelzők a következők:
INTERNET_FLAG_TRANSFER_ASCIIAz alapértelmezett érték. A fájl átvitele ASCII-szövegként.INTERNET_FLAG_TRANSFER_BINARYA fájl átvitele bináris fájlként.INTERNET_FLAG_RELOADKérje le az adatokat a vezetékről, még akkor is, ha azokat helyileg gyorsítótárazza.INTERNET_FLAG_DONT_CACHENe gyorsítótárazza az adatokat helyileg vagy átjárókban.INTERNET_FLAG_SECUREEz a jelző csak HTTP-kérelmekre vonatkozik. Biztonságos tranzakciókat kér a vezetéken a Secure Sockets Layer vagy a PCT használatával.INTERNET_OPEN_FLAG_USE_EXISTING_CONNECTHa lehetséges, használja újra a kiszolgáló meglévő kapcsolatait az új kérésekhez, amelyeketOpenUrlahelyett, hogy új munkamenetet hoz létre az egyes kapcsolatkérésekhez.INTERNET_FLAG_PASSIVEFTP-helyhez használatos. Passzív FTP-szemantikát használ. A (1) és a (CInternetConnection3)OpenURL
pstrHeaders
Mutató a HTTP-kiszolgálónak küldendő fejléceket tartalmazó sztringre.
dwHeadersLength
A további fejlécek hossza karakterben. Ha ez nem -1LpstrHeadersNULL, akkor pstrHeaders a rendszer azt feltételezi, hogy nullával végződik, és kiszámítja a hosszt.
Visszaadott érték
Csak FTP-, GOPHER-, HTTP- és FÁJL típusú internetszolgáltatásokhoz ad vissza egy fájlleírót. Eredmény, NULL ha az elemzés sikertelen volt.
A visszaadott OpenURL mutató a szolgáltatás típusától függ pstrURL. Az alábbi táblázat bemutatja, hogy milyen lehetséges mutatók OpenURL térhetnek vissza.
| URL-cím típusa | Visszatérítések |
|---|---|
file:// |
CStdioFile* |
http:// |
CHttpFile* |
gopher:// |
CGopherFile* |
ftp:// |
CInternetFile* |
Megjegyzések
A paraméternek dwFlags tartalmaznia kell vagy INTERNET_FLAG_TRANSFER_ASCIIINTERNET_FLAG_TRANSFER_BINARY, de nem mindkettőt. A többi jelző kombinálható a bitenkénti "vagy" (|) operátorral.
OpenURL, amely a Win32 függvényt InternetOpenURLburkolja, lehetővé teszi az adatok letöltését, lekérését és olvasását egy internetes kiszolgálóról.
OpenURL távoli helyen nem engedélyezi a fájlkezelést, ezért nincs CInternetConnection szükség objektumra.
A kapcsolatspecifikus (vagyis protokollspecifikus) függvények( például fájlba írás) használatához meg kell nyitnia egy munkamenetet, majd meg kell nyitnia egy adott kapcsolattípust, majd ezzel a kapcsolattal meg kell nyitnia egy fájlt a kívánt módban. További CInternetConnection információ a kapcsolatspecifikus függvényekről.
CInternetSession::operator HINTERNET
Ezzel az operátorral lekérheti a Windows-leírót az aktuális internetes munkamenethez.
operator HINTERNET() const;
CInternetSession::SetCookie
Beállít egy cookie-t a megadott URL-címhez.
static BOOL SetCookie(
LPCTSTR pstrUrl,
LPCTSTR pstrCookieName,
LPCTSTR pstrCookieData);
Paraméterek
pstrUrl
Egy null értékű sztringre mutató mutató, amely megadja azt az URL-címet, amelyhez a cookie-t be kell állítani.
pstrCookieName
A cookie nevét tartalmazó sztringre mutató mutató.
pstrCookieData
Mutató az URL-címhez társítandó tényleges sztringadatokat tartalmazó sztringre.
Visszaadott érték
TRUE Sikeres vagy FALSE más módon visszaadott értéket. Az adott hibakód lekéréséhez hívja meg a következőt GetLastError: .
Megjegyzések
Ez a tagfüggvény implementálja a Win32-üzenet InternetSetCookieviselkedését a Windows SDK-ban leírtak szerint.
CInternetSession::SetOption
Hívja meg ezt a tagfüggvényt az internetes munkamenet beállításainak beállításához.
BOOL SetOption(
DWORD dwOption,
LPVOID lpBuffer,
DWORD dwBufferLength,
DWORD dwFlags = 0);
BOOL SetOption(
DWORD dwOption,
DWORD dwValue,
DWORD dwFlags = 0);
Paraméterek
dwOption
A beállítani kívánt internetbeállítás. A lehetséges lehetőségek listáját a Windows SDK beállításjelzői között találja.
lpBuffer
A beállítási beállítást tartalmazó puffer.
dwBufferLength
A hosszúság vagy lpBuffer a méret.dwValue
dwValue
A DWORD beállítási beállítást tartalmazó beállítás.
dwFlags
Különböző gyorsítótárazási beállításokat jelez. Az alapértelmezett érték 0. A lehetséges értékek a következők:
INTERNET_FLAG_DONT_CACHENe gyorsítótárazza az adatokat helyileg vagy átjárókiszolgálókon.INTERNET_FLAG_OFFLINEA letöltési műveletek csak az állandó gyorsítótáron keresztül teljesülnek. Ha az elem nem létezik a gyorsítótárban, a rendszer egy megfelelő hibakódot ad vissza. Ez a jelző kombinálható a bitenkénti "vagy" (|) operátorral.
Visszaadott érték
Ha a művelet sikeres volt, a rendszer visszaad egy TRUE értéket. Hiba esetén a függvény visszaad egy FALSE értéket. Ha a hívás sikertelen, a Win32 függvény GetLastError meghívható a hiba okának meghatározásához.
Lásd még
CObject osztály
hierarchiadiagram
CInternetConnection osztály
CHttpConnection osztály
CFtpConnection osztály
CGopherConnection osztály