Aracılığıyla paylaş


CInternetSession Sınıf

Tek veya birkaç eşzamanlı İnternet oturumu oluşturup başlatır ve gerekirse bir ara sunucuyla bağlantınızı açıklar.

Sözdizimi

class CInternetSession : public CObject

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CInternetSession::CInternetSession Bir CInternetSession nesne oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CInternetSession::Close İnternet oturumu sonlandırıldığında İnternet bağlantısını kapatır.
CInternetSession::EnableStatusCallback Durum geri çağırma yordamı oluşturur.
CInternetSession::GetContext İnternet oturumu sonlandırıldığında İnternet bağlantısını kapatır.
CInternetSession::GetCookie Belirtilen URL ve tüm üst URL'leri için tanımlama bilgileri döndürür.
CInternetSession::GetCookieLength Arabellekte depolanan tanımlama bilgisinin uzunluğunu belirten değişkeni alır.
CInternetSession::GetFtpConnection Bir sunucuyla FTP oturumu açar. Kullanıcı üzerinde günlüğe kaydeder.
CInternetSession::GetGopherConnection Bağlantı açmaya çalışan bir uygulama için gopher sunucusunu açar.
CInternetSession::GetHttpConnection Bağlantı açmaya çalışan bir uygulamanın HTTP sunucusunu açar.
CInternetSession::OnStatusCallback Durum geri çağırma etkinleştirildiğinde işlemin durumunu güncelleştirir.
CInternetSession::OpenURL Bir URL'yi ayrıştırıp açar.
CInternetSession::SetCookie Belirtilen URL için bir tanımlama bilgisi ayarlar.
CInternetSession::SetOption İnternet oturumu seçeneklerini ayarlar.

Ortak İşleçler

Veri Akışı Adı Açıklama
CInternetSession::operator HINTERNET Geçerli İnternet oturumunun tanıtıcısı.

Açıklamalar

İnternet bağlantınızın bir uygulama süresi boyunca korunması gerekiyorsa sınıfının bir CInternetSession üyesini CWinAppoluşturabilirsiniz.

Bir İnternet oturumu oluşturduktan sonra öğesini çağırabilirsiniz OpenURL. CInternetSession ardından genel işlevini AfxParseURLçağırarak URL'yi ayrıştırıyor. Protokol türünden bağımsız olarak URL'yi CInternetSession yorumlar ve sizin için yönetir. "file://" URL kaynağıyla tanımlanan yerel dosyalara yönelik istekleri işleyebilir. OpenURL geçirdiğiniz ad yerel bir dosyaysa nesnenin CStdioFile işaretçisini döndürür.

kullanarak OpenURLbir İnternet sunucusunda URL açarsanız, siteden bilgileri okuyabilirsiniz. Sunucuda bulunan dosyalarda hizmete özgü (örneğin HTTP, FTP veya gopher) eylemler gerçekleştirmek istiyorsanız, bu sunucuyla uygun bağlantıyı kurmanız gerekir. Belirli bir tür bağlantıyı doğrudan belirli bir hizmete açmak için aşağıdaki üye işlevlerinden birini kullanın:

SetOption oturumunuzun zaman aşımı değerleri, yeniden deneme sayısı vb. gibi sorgu seçeneklerini ayarlamanıza olanak tanır.

CInternetSession üye işlevleri SetCookie, GetCookieve sunucuların ve GetCookieLength betiklerin istemci iş istasyonu hakkındaki durum bilgilerini koruduğu bir Win32 tanımlama bilgisi veritabanını yönetme araçlarını sağlar.

Temel İnternet programlama görevleri hakkında daha fazla bilgi için İnternet İlk Adımları: makalesine bakın. WinInet MFC WinInet sınıflarını kullanma hakkında genel bilgi için ile WinInetİnternet Programlama makalesine bakın.

Not

CInternetSession desteklenmeyen hizmet türleri için bir AfxThrowNotSupportedException oluşturur. Şu anda yalnızca aşağıdaki hizmet türleri desteklenmektedir: FTP, HTTP, gopher ve file.

Devralma Hiyerarşisi

CObject
CInternetSession

Gereksinimler

Üstbilgi: afxinet.h

CInternetSession::CInternetSession

Bir nesne oluşturulduğunda bu üye işlevi çağrılır CInternetSession .

CInternetSession(
    LPCTSTR pstrAgent = NULL,
    DWORD_PTR dwContext = 1,
    DWORD dwAccessType = PRE_CONFIG_INTERNET_ACCESS,
    LPCTSTR pstrProxyName = NULL,
    LPCTSTR pstrProxyBypass = NULL,
    DWORD dwFlags = 0);

Parametreler

pstrAgent
İnternet işlevlerini çağıran uygulamanın veya varlığın adını tanımlayan bir dize işaretçisi (örneğin, "Microsoft Internet Browser"). (varsayılan) ise pstrAgent NULL , çerçeve genel işlevini çağırır. Bu işlev AfxGetAppName, bir uygulamanın adını içeren null olarak sonlandırılan bir dize döndürür. Bazı protokoller, uygulamanızı sunucuya tanımlamak için bu dizeyi kullanır.

dwContext
İşlemin bağlam tanımlayıcısı. dwContext tarafından CInternetSession::OnStatusCallbackdöndürülen işlemin durum bilgilerini tanımlar. Varsayılan değer 1 olarak ayarlanır; ancak, işlem için belirli bir bağlam kimliğini açıkça atayabilirsiniz. Nesnesi ve yaptığı tüm çalışmalar bu bağlam kimliğiyle ilişkilendirilecektir.

dwAccessType
Gerekli erişim türü. Aşağıdakiler, tam olarak biri sağlanabilir geçerli değerlerdir:

  • INTERNET_OPEN_TYPE_PRECONFIG Kayıt defterinde önceden yapılandırılmış ayarları kullanarak bağlanın. Bu erişim türü varsayılan olarak ayarlanır. TIS ara sunucusu aracılığıyla bağlanmak için bu değere ayarlayın dwAccessType ; ardından kayıt defterini uygun şekilde ayarlayın.

  • INTERNET_OPEN_TYPE_DIRECT Doğrudan İnternet'e bağlanın.

  • INTERNET_OPEN_TYPE_PROXY CERN ara sunucusu üzerinden bağlanın.

Farklı proxy türlerine bağlanma hakkında bilgi için bkz . Tipik FTP İstemci Uygulamasındaki Adımlar.

pstrProxyName
olarak INTERNET_OPEN_TYPE_PROXYayarlandıysa dwAccessType tercih edilen CERN proxy'sinin adı. Varsayılan değer: NULL.

pstrProxyBypass
İsteğe bağlı sunucu adresleri listesini içeren bir dize işaretçisi. Ara sunucu erişimi kullanılırken bu adresler atlanabilir. Bir NULL değer sağlanırsa atlama listesi kayıt defterinden okunur. Bu parametre yalnızca olarak ayarlandıysa dwAccessType INTERNET_OPEN_TYPE_PROXYanlamlıdır.

dwFlags
Çeşitli önbelleğe alma seçeneklerini gösterir. Varsayılan değer 0 olarak ayarlanır. Olası değerler şunlardır:

  • INTERNET_FLAG_DONT_CACHE Verileri yerel olarak veya ağ geçidi sunucularında önbelleğe alma.

  • INTERNET_FLAG_OFFLINE İndirme işlemleri yalnızca kalıcı önbellek aracılığıyla karşılar. Öğe önbellekte yoksa, uygun bir hata kodu döndürülür. Bu bayrak bit düzeyinde "veya" (|) işleciyle birleştirilebilir.

Açıklamalar

CInternetSession bir uygulama tarafından çağrılan ilk İnternet işlevidir. İç veri yapılarını başlatır ve uygulamadan gelecek çağrılar için hazırlanır.

Hiçbir İnternet bağlantısı açılamıyorsa, CInternetSession bir AfxThrowInternetExceptionoluşturur.

Örnek

örneğine CFtpFileFindbakın.

CInternetSession::Close

Uygulamanız nesnesini kullanmayı bitirdiğinde bu üye işlevini çağırın CInternetSession .

virtual void Close();

Örnek

örneğine CFtpFileFindbakın.

CInternetSession::EnableStatusCallback

Durum geri çağırmayı etkinleştirmek için bu üye işlevini çağır.

BOOL EnableStatusCallback(BOOL bEnable = TRUE);

Parametreler

bEnable
Geri çağırmanın etkin mi yoksa devre dışı mı olduğunu belirtir. Varsayılan değer: TRUE.

Dönüş Değeri

Başarılı olursa sıfır olmayan; aksi takdirde 0. Çağrı başarısız olursa, oluşan CInternetException nesneyi inceleyerek hatanın nedenini belirleyin.

Açıklamalar

Durum geri çağırmayı işlerken, uygulamanın durum çubuğunda işlemin ilerleme durumu (ad çözümleme, sunucuya bağlanma vb.) hakkında durum sağlayabilirsiniz. Uzun süreli bir işlem sırasında özellikle işlem durumunun görüntülenmesi tercih edilir.

Geri çağırmalar isteğin işlenmesi sırasında gerçekleştiğinden, uygulamanın ağa veri aktarım hızının düşürülmesini önlemek için geri çağırmada mümkün olduğunca az zaman harcaması gerekir. Örneğin, bir geri çağırmaya bir iletişim kutusu koymak, sunucunun isteği sonlandıracağı kadar uzun bir işlem olabilir.

Geri çağırma beklemede olduğu sürece durum geri çağırması kaldırılamaz.

Herhangi bir işlemi zaman uyumsuz olarak işlemek için kendi iş parçacığınızı oluşturmanız veya MFC olmadan WinInet işlevlerini kullanmanız gerekir.

CInternetSession::GetContext

Belirli bir uygulama oturumu için bağlam değerini almak için bu üye işlevini çağırın.

DWORD_PTR GetContext() const;

Dönüş Değeri

Uygulama tanımlı bağlam Tanımlayıcısı.

Açıklamalar

OnStatusCallback tarafından döndürülen GetContext bağlam kimliğini kullanarak belirli bir uygulamanın durumunu bildirir. Örneğin, bir kullanıcı durum bilgilerini döndürmeyi içeren bir İnternet isteğini etkinleştirdiğinde, durum geri çağırması söz konusu istekte durumu bildirmek için bağlam kimliğini kullanır. Kullanıcı her ikisi de durum bilgilerinin döndürülmesiyle ilgili iki ayrı İnternet isteğini etkinleştirirse, OnStatusCallback ilgili istekleriyle ilgili durumu döndürmek için bağlam tanımlayıcılarını kullanır. Sonuç olarak, bağlam tanımlayıcısı tüm durum geri çağırma işlemleri için kullanılır ve oturum sona erene kadar oturumla ilişkilendirilir.

Zaman uyumsuz işlemler hakkında daha fazla bilgi için İnternet İlk Adımları: WinInet makalesine bakın.

CInternetSession::GetCookie

Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 işlevinin InternetGetCookiedavranışını uygular.

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPTSTR pstrCookieData,
    DWORD dwBufLen);

static BOOL GetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    CString& strCookieData);

Parametreler

pstrUrl
URL'yi içeren bir dize işaretçisi.

pstrCookieName
Belirtilen URL için alınacak tanımlama bilgisinin adını içeren bir dize işaretçisi.

pstrCookieData
İlk aşırı yüklemede, tanımlama bilgisi verilerini alan arabelleğin adresini içeren bir dize işaretçisi. Bu değer olabilir NULL. İkinci aşırı yüklemede, tanımlama bilgisi verilerini almak için bir CString nesneye başvuru.

dwBufLen
Arabelleğin boyutunu pstrCookieData belirten değişken. İşlev başarılı olursa, arabellek arabelleğe kopyalanan pstrCookieData veri miktarını alır. ise pstrCookieData NULL, bu parametre tüm tanımlama bilgisi verilerini kopyalamak için gereken arabellek boyutunu belirten bir değer alır.

Dönüş Değeri

Başarılı olursa veya FALSE başka bir şekilde döndürürTRUE. Çağrı başarısız olursa, hatanın nedenini belirlemek için Win32 işlevini GetLastError çağırın. Aşağıdaki hata değerleri geçerlidir:

  • ERROR_NO_MORE_ITEMS Belirtilen URL ve tüm üst bilgileri için tanımlama bilgisi yok.

  • ERROR_INSUFFICIENT_BUFFER geçirilen dwBufLen değer, tüm tanımlama bilgisi verilerini kopyalamak için yetersiz. içinde dwBufLen döndürülen değer, tüm verileri almak için gereken arabellek boyutudur.

Açıklamalar

İkinci aşırı yüklemede MFC, sağlanan CString nesneye tanımlama bilgisi verilerini alır.

CInternetSession::GetCookieLength

Arabellekte depolanan tanımlama bilgisinin uzunluğunu almak için bu üye işlevini çağırın.

static DWORD GetCookieLength(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName);

Parametreler

pstrUrl
URL'yi içeren bir dize işaretçisi

pstrCookieName
Tanımlama bilgisinin adını içeren bir dize işaretçisi.

Dönüş Değeri

DWORD Arabellekte depolanan tanımlama bilgisinin uzunluğunu gösteren değer. Tarafından belirtilen pstrCookieName ada sahip bir tanımlama bilgisi yoksa sıfır.

Açıklamalar

Bu değer tarafından GetCookiekullanılır.

CInternetSession::GetFtpConnection

FTP bağlantısı kurmak ve bir nesneye işaretçi almak için CFtpConnection bu üye işlevini çağır.

CFtpConnection* GetFtpConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    BOOL bPassive = FALSE);

Parametreler

pstrServer
FTP sunucusu adını içeren bir dize işaretçisi.

pstrUserName
Oturum açmak için kullanıcının adını belirten null ile sonlandırılan bir dize işaretçisi. ise NULL, varsayılan değer anonimdir.

pstrPassword
Oturum açmak için kullanılacak parolayı belirten null ile sonlandırılan dizeye yönelik bir işaretçi. hem pstrUserName hem de pstrPassword iseNULL, varsayılan anonim parola kullanıcının e-posta adıdır. NULL ise pstrPassword (veya boş bir dizeyse) ancak pstrUserName değilseNULL, boş bir parola kullanılır. Aşağıdaki tabloda ve pstrPasswordiçin dört olası ayarın pstrUserName davranışı açıklanmaktadır:

pstrUserName pstrPassword FTP sunucusuna gönderilen kullanıcı adı FTP sunucusuna gönderilen parola
NULL veya " " NULL veya " " "anonymous" Kullanıcının e-posta adı
NULL Dize Olmayan NULL veya " " pstrUserName " "
NULL NULL Dize Olmayan HATA HATA
NULL Dize Olmayan NULL Dize Olmayan pstrUserName pstrPassword

nPort
Sunucuda kullanılacak TCP/IP bağlantı noktasını tanımlayan bir sayı.

bPassive
Bu FTP oturumu için pasif veya etkin modu belirtir. olarak ayarlanırsa TRUE, Win32 API'sini dwFlag olarak INTERNET_FLAG_PASSIVEayarlar.

Dönüş Değeri

Nesne işaretçisi CFtpConnection . Çağrı başarısız olursa, oluşan CInternetException nesneyi inceleyerek hatanın nedenini belirleyin.

Açıklamalar

GetFtpConnection bir FTP sunucusuna bağlanır ve bir CFTPConnection nesneye bir işaretçi oluşturur ve döndürür. Sunucuda belirli bir işlem gerçekleştirmez. Örneğin, dosyaları okumak veya dosyalara yazmak istiyorsanız, bu işlemleri ayrı adımlar olarak gerçekleştirmeniz gerekir. Dosyaları arama, dosyaları açma ve CFtpFileFind dosyaları okuma veya dosyalara yazma hakkında bilgi için sınıflara CFtpConnection ve bakın. Yaygın FTP bağlantı görevlerini gerçekleştirme adımları için WinInet ile İnternet Programlama makalesine bakın.

Örnek

örneğine CFtpFileFindbakın.

CInternetSession::GetGopherConnection

Yeni bir gopher bağlantısı kurmak ve bir nesneye işaretçi almak için CGopherConnection bu üye işlevini çağır.

CGopherConnection* GetGopherConnection(
    LPCTSTR pstrServer,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER);

Parametreler

pstrServer
Gopher sunucu adını içeren bir dize işaretçisi.

pstrUserName
Kullanıcı adını içeren bir dize işaretçisi.

pstrPassword
Erişim parolasını içeren bir dize işaretçisi.

nPort
Sunucuda kullanılacak TCP/IP bağlantı noktasını tanımlayan bir sayı.

Dönüş Değeri

Nesne işaretçisi CGopherConnection . Çağrı başarısız olursa, oluşan CInternetException nesneyi inceleyerek hatanın nedenini belirleyin.

Açıklamalar

GetGopherConnection gopher sunucusuna bağlanır ve bir CGopherConnection nesnenin işaretçisini oluşturur ve döndürür. Sunucuda belirli bir işlem gerçekleştirmez. Örneğin, verileri okumak veya yazmak istiyorsanız, bu işlemleri ayrı adımlar olarak gerçekleştirmeniz gerekir. Dosya arama, dosyaları açma ve CGopherFileFind dosyaları okuma veya dosyalara yazma hakkında bilgi için , CGopherFileve sınıflarına CGopherConnectionbakın. FTP sitesine göz atma hakkında bilgi için bkz. üye işlevi OpenURL. Yaygın gopher bağlantı görevlerini gerçekleştirme adımları için WinInet ile İnternet Programlama makalesine bakın.

CInternetSession::GetHttpConnection

HTTP bağlantısı kurmak ve bir nesneye işaretçi almak için CHttpConnection bu üye işlevini çağır.

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);

Parametreler

pstrServer
HTTP sunucusu adını içeren bir dize işaretçisi.

nPort
Sunucuda kullanılacak TCP/IP bağlantı noktasını tanımlayan bir sayı.

pstrUserName
Kullanıcı adını içeren bir dize işaretçisi.

pstrPassword
Erişim parolasını içeren bir dize işaretçisi.

dwflags
Bayrakların herhangi bir INTERNET_FLAG_* bileşimi. Değerlerin açıklaması için açıklamalar bölümündeki CHttpConnection::OpenRequest tabloya dwFlags bakın.

Dönüş Değeri

Nesne işaretçisi CHttpConnection . Çağrı başarısız olursa, oluşan CInternetException nesneyi inceleyerek hatanın nedenini belirleyin.

Açıklamalar

GetHttpConnection bir HTTP sunucusuna bağlanır ve bir CHttpConnection nesnenin işaretçisini oluşturur ve döndürür. Sunucuda belirli bir işlem gerçekleştirmez. Örneğin, bir HTTP üst bilgisini sorgulamak istiyorsanız, bu işlemi ayrı bir adım olarak gerçekleştirmeniz gerekir. Sınıflara CHttpConnection bakın ve CHttpFile HTTP sunucusuna bağlantı kullanarak gerçekleştirebileceğiniz işlemler hakkında bilgi için. HTTP sitesine göz atma hakkında bilgi için bkz. üye işlevi OpenURL. Yaygın HTTP bağlantı görevlerini gerçekleştirme adımları için WinInet ile İnternet Programlama makalesine bakın.

CInternetSession::OnStatusCallback

Bu üye işlevi, durum geri çağırma etkinleştirildiğinde ve bir işlem beklemede olduğunda durumu güncelleştirmek için çerçeve tarafından çağrılır.

virtual void OnStatusCallback(
    DWORD_PTR dwContext,
    DWORD dwInternetStatus,
    LPVOID lpvStatusInformation,
    DWORD dwStatusInformationLength);

Parametreler

dwContext
Uygulama tarafından sağlanan bağlam değeri.

dwInternetStatus
Geri çağırmanın neden yapıldığını gösteren durum kodu. Olası değerler tablosu için açıklamalar bölümüne bakın.

lpvStatusInformation
Bu geri çağırmayla ilgili bilgileri içeren arabelleğe yönelik bir işaretçi.

dwStatusInformationLength
boyutu lpvStatusInformation.

Açıklamalar

Durum geri çağırmadan yararlanmak için önce aramanız EnableStatusCallback gerekir.

dwInternetStatus parametresi, gerçekleştirilmekte olan işlemi gösterir ve içeriğinin lpvStatusInformation ne olacağını belirler. dwStatusInformationLength , içinde lpvStatusInformationbulunan verilerin uzunluğunu gösterir. için dwInternetStatus aşağıdaki durum değerleri aşağıdaki gibi tanımlanır:

Değer Anlamı
INTERNET_STATUS_RESOLVING_NAME içinde yer alan adın IP adresi aranıyor lpvStatusInformation.
INTERNET_STATUS_NAME_RESOLVED içinde bulunan lpvStatusInformationadın IP adresi başarıyla bulundu.
INTERNET_STATUS_CONNECTING_TO_SERVER tarafından lpvStatusInformationişaret edilen yuva adresine (SOCKADDR) bağlanılıyor.
INTERNET_STATUS_CONNECTED_TO_SERVER tarafından lpvStatusInformationişaret edilen yuva adresine (SOCKADDR) başarıyla bağlandı.
INTERNET_STATUS_SENDING_REQUEST Sunucuya bilgi isteği gönderiliyor. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_REQUEST_SENT Bilgi isteği sunucuya başarıyla gönderildi. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_RECEIVING_RESPONSE Sunucunun bir isteği yanıtlaması bekleniyor. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_RESPONSE_RECEIVED Sunucudan başarıyla bir yanıt alındı. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_CLOSING_CONNECTION Sunucu bağlantısı kapatılıyor. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_CONNECTION_CLOSED Sunucu bağlantısını başarıyla kapattı. lpvStatusInformation parametresidirNULL.
INTERNET_STATUS_HANDLE_CREATED Win32 API işlevi InternetConnect tarafından yeni tanıtıcının oluşturulduğunu belirtmek için kullanılır. Bu, bağlantı çok uzun sürüyorsa uygulamanın başka bir iş parçacığından Win32 işlevini InternetCloseHandle çağırmasını sağlar. Bu işlevler hakkında daha fazla bilgi için bkz. Windows SDK.
INTERNET_STATUS_HANDLE_CLOSING Bu tanıtıcı değeri başarıyla sonlandırıldı.

Durum geri çağırma yordamı gerçekleştirilmeden önce bir eylem gerektirmek için bu üye işlevini geçersiz kılın.

Not

Durum geri çağırmaları için iş parçacığı durumu koruması gerekir. Paylaşılan bir kitaplıkta MFC kullanıyorsanız, geçersiz kılmanızın başına aşağıdaki satırı ekleyin:

AFX_MANAGE_STATE(AfxGetAppModuleState());

Zaman uyumsuz işlemler hakkında daha fazla bilgi için İnternet İlk Adımları: WinInet makalesine bakın.

CInternetSession::OpenURL

Belirtilen isteği HTTP sunucusuna göndermek ve istemcinin istekle birlikte gönderilecek ek RFC822, MIME veya HTTP üst bilgileri belirtmesine izin vermek için bu üye işlevini çağırın.

CStdioFile* OpenURL(
    LPCTSTR pstrURL,
    DWORD_PTR dwContext = 1,
    DWORD dwFlags = INTERNET_FLAG_TRANSFER_ASCII,
    LPCTSTR pstrHeaders = NULL,
    DWORD dwHeadersLength = 0);

Parametreler

pstrURL
Okumaya başlamak için URL'nin adına işaret eden bir işaretçi. Yalnızca , ftp:, gopher:veya http: ile file:başlayan URL'ler desteklenir. ise pstrURL NULLonaylar.

dwContext
Geri çağırmada döndürülen tanıtıcı ile geçirilen uygulama tanımlı bir değer.

dwFlags
Bu bağlantının nasıl işleneceğini açıklayan bayraklar. Geçerli bayraklar hakkında daha fazla bilgi için bkz. Açıklamalar. Geçerli bayraklar şunlardır:

  • INTERNET_FLAG_TRANSFER_ASCII Varsayılan değerdir. Dosyayı ASCII metni olarak aktarın.

  • INTERNET_FLAG_TRANSFER_BINARY Dosyayı ikili dosya olarak aktarın.

  • INTERNET_FLAG_RELOAD Yerel olarak önbelleğe alınmış olsa bile verileri kablodan alın.

  • INTERNET_FLAG_DONT_CACHE Verileri yerel olarak veya herhangi bir ağ geçidinde önbelleğe alma.

  • INTERNET_FLAG_SECURE Bu bayrak yalnızca HTTP istekleri için geçerlidir. Güvenli Yuva Katmanı veya PCT ile kablo üzerinde güvenli işlemler ister.

  • INTERNET_OPEN_FLAG_USE_EXISTING_CONNECT Mümkünse, her bağlantı isteği için yeni bir oturum oluşturmak yerine tarafından OpenUrl oluşturulan yeni istekler için sunucuya yönelik mevcut bağlantıları yeniden kullanın.

  • INTERNET_FLAG_PASSIVE FTP sitesi için kullanılır. Pasif FTP semantiği kullanır. ile kullanılır CInternetConnection OpenURL.

pstrHeaders
HTTP sunucusuna gönderilecek üst bilgileri içeren bir dize işaretçisi.

dwHeadersLength
Ek üst bilgilerin karakter cinsinden uzunluğu. Bu ise -1L ve pstrHeaders değilseNULL, pstrHeaders sıfır sonlandırıldığı varsayılır ve uzunluk hesaplanır.

Dönüş Değeri

Yalnızca FTP, GOPHER, HTTP ve DOSYA türü İnternet hizmetleri için bir dosya tanıtıcısı döndürür. Ayrıştırma başarısız olursa döndürür NULL .

Döndüren OpenURL işaretçi, 'nin hizmet türüne bağlıdır pstrURL. Aşağıdaki tabloda, olası işaretçilerin döndürebileceği gösterilmektedir OpenURL .

URL türü Döndürülenler
file:// CStdioFile*
http:// CHttpFile*
gopher:// CGopherFile*
ftp:// CInternetFile*

Açıklamalar

parametresi dwFlags ya da INTERNET_FLAG_TRANSFER_ASCII INTERNET_FLAG_TRANSFER_BINARYiçermelidir, ancak ikisini birden içermemelidir. Kalan bayraklar bit düzeyinde "veya" (|) işleciyle birleştirilebilir.

OpenURL, Win32 işlevini InternetOpenURLsarmalar, yalnızca bir İnternet sunucusundan veri indirmeye, almaya ve okumaya izin verir. OpenURL uzak bir konumda dosya düzenlemesine izin verir, bu nedenle nesne gerektirmez CInternetConnection .

Dosyaya yazma gibi bağlantıya özgü (protokole özgü) işlevleri kullanmak için bir oturum açmanız, belirli bir bağlantı türünü açmanız ve ardından bu bağlantıyı kullanarak dosyayı istenen modda açmanız gerekir. Bağlantıya özgü işlevler hakkında daha fazla bilgi için bkz CInternetConnection .

CInternetSession::operator HINTERNET

Geçerli İnternet oturumu için Windows tanıtıcısını almak için bu işleci kullanın.

operator HINTERNET() const;

CInternetSession::SetCookie

Belirtilen URL için bir tanımlama bilgisi ayarlar.

static BOOL SetCookie(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName,
    LPCTSTR pstrCookieData);

Parametreler

pstrUrl
Tanımlama bilgisinin ayarlanması gereken URL'yi belirten null olarak sonlandırılan bir dize işaretçisi.

pstrCookieName
Tanımlama bilgisinin adını içeren bir dize işaretçisi.

pstrCookieData
URL ile ilişkilendirilecek gerçek dize verilerini içeren bir dize işaretçisi.

Dönüş Değeri

Başarılı olursa veya FALSE başka bir şekilde döndürürTRUE. Belirli bir hata kodunu almak için öğesini çağırın GetLastError.

Açıklamalar

Bu üye işlevi, Windows SDK'da açıklandığı gibi Win32 iletisinin InternetSetCookiedavranışını uygular.

CInternetSession::SetOption

İnternet oturumu seçeneklerini ayarlamak için bu üye işlevini çağırın.

BOOL SetOption(
    DWORD dwOption,
    LPVOID lpBuffer,
    DWORD dwBufferLength,
    DWORD dwFlags = 0);

BOOL SetOption(
    DWORD dwOption,
    DWORD dwValue,
    DWORD dwFlags = 0);

Parametreler

dwOption
Ayarlanacağı İnternet seçeneği. Olası seçeneklerin listesi için bkz . Windows SDK'sında Seçenek Bayrakları .

lpBuffer
Seçenek ayarını içeren bir arabellek.

dwBufferLength
uzunluğu lpBuffer veya boyutu dwValue.

dwValue
DWORD Seçenek ayarını içeren bir.

dwFlags
Çeşitli önbelleğe alma seçeneklerini gösterir. Varsayılan değer 0 olarak ayarlanır. Olası değerler şunlardır:

  • INTERNET_FLAG_DONT_CACHE Verileri yerel olarak veya ağ geçidi sunucularında önbelleğe alma.

  • INTERNET_FLAG_OFFLINE İndirme işlemleri yalnızca kalıcı önbellek aracılığıyla karşılar. Öğe önbellekte yoksa, uygun bir hata kodu döndürülür. Bu bayrak bit düzeyinde "veya" (|) işleciyle birleştirilebilir.

Dönüş Değeri

İşlem başarılı olursa değeri TRUE döndürülür. Bir hata oluştuysa değeri FALSE döndürülür. Çağrı başarısız olursa, hatanın nedenini belirlemek için Win32 işlevi GetLastError çağrılabilir.

Ayrıca bkz.

CObject Sınıf
Hiyerarşi Grafiği
CInternetConnection Sınıf
CHttpConnection Sınıf
CFtpConnection Sınıf
CGopherConnection Sınıf