Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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:
GetGopherConnectionbir gopher hizmetine bağlantı açmak için.GetHttpConnectionbir HTTP hizmetine bağlantı açmak için.GetFtpConnectionbir FTP hizmetine bağlantı açmak için.
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_PRECONFIGKayı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ındwAccessType; ardından kayıt defterini uygun şekilde ayarlayın.INTERNET_OPEN_TYPE_DIRECTDoğrudan İnternet'e bağlanın.INTERNET_OPEN_TYPE_PROXYCERN 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_CACHEVerileri 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_ITEMSBelirtilen URL ve tüm üst bilgileri için tanımlama bilgisi yok.ERROR_INSUFFICIENT_BUFFERgeçirilendwBufLendeğer, tüm tanımlama bilgisi verilerini kopyalamak için yetersiz. içindedwBufLendö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_ASCIIVarsayılan değerdir. Dosyayı ASCII metni olarak aktarın.INTERNET_FLAG_TRANSFER_BINARYDosyayı ikili dosya olarak aktarın.INTERNET_FLAG_RELOADYerel olarak önbelleğe alınmış olsa bile verileri kablodan alın.INTERNET_FLAG_DONT_CACHEVerileri yerel olarak veya herhangi bir ağ geçidinde önbelleğe alma.INTERNET_FLAG_SECUREBu 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_CONNECTMümkünse, her bağlantı isteği için yeni bir oturum oluşturmak yerine tarafındanOpenUrloluşturulan yeni istekler için sunucuya yönelik mevcut bağlantıları yeniden kullanın.INTERNET_FLAG_PASSIVEFTP sitesi için kullanılır. Pasif FTP semantiği kullanır. ile kullanılırCInternetConnectionOpenURL.
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_CACHEVerileri 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