Bagikan melalui


CInternetSession Kelas

Membuat dan menginisialisasi satu atau beberapa sesi Internet simultan dan, jika perlu, menjelaskan koneksi Anda ke server proksi.

Sintaks

class CInternetSession : public CObject

Anggota

Konstruktor Publik

Nama Deskripsi
CInternetSession::CInternetSession Membuat CInternetSession objek.

Metode Publik

Nama Deskripsi
CInternetSession::Close Menutup sambungan Internet ketika sesi Internet dihentikan.
CInternetSession::EnableStatusCallback Menetapkan rutinitas panggilan balik status.
CInternetSession::GetContext Menutup sambungan Internet ketika sesi Internet dihentikan.
CInternetSession::GetCookie Mengembalikan cookie untuk URL yang ditentukan dan semua URL induknya.
CInternetSession::GetCookieLength Mengambil variabel yang menentukan panjang cookie yang disimpan dalam buffer.
CInternetSession::GetFtpConnection Membuka sesi FTP dengan server. Log pada pengguna.
CInternetSession::GetGopherConnection Membuka server gopher untuk aplikasi yang mencoba membuka koneksi.
CInternetSession::GetHttpConnection Membuka server HTTP untuk aplikasi yang mencoba membuka koneksi.
CInternetSession::OnStatusCallback Memperbarui status operasi saat panggilan balik status diaktifkan.
CInternetSession::OpenURL Mengurai dan membuka URL.
CInternetSession::SetCookie Mengatur cookie untuk URL yang ditentukan.
CInternetSession::SetOption Mengatur opsi untuk sesi Internet.

Operator Publik

Nama Deskripsi
CInternetSession::operator HINTERNET Handel ke sesi Internet saat ini.

Keterangan

Jika koneksi Internet Anda harus dipertahankan selama durasi aplikasi, Anda dapat membuat CInternetSession anggota kelas CWinApp.

Setelah membuat sesi Internet, Anda dapat memanggil OpenURL. CInternetSession kemudian mengurai URL untuk Anda dengan memanggil fungsi AfxParseURLglobal . Terlepas dari jenis protokolnya, CInternetSession menafsirkan URL dan mengelolanya untuk Anda. Ini dapat menangani permintaan untuk file lokal yang diidentifikasi dengan sumber daya URL "file://". OpenURL akan mengembalikan penunjuk ke CStdioFile objek jika nama yang Anda berikan adalah file lokal.

Jika Anda membuka URL pada server Internet menggunakan OpenURL, Anda dapat membaca informasi dari situs. Jika Anda ingin melakukan tindakan khusus layanan (misalnya, HTTP, FTP, atau gopher) pada file yang terletak di server, Anda harus membuat koneksi yang sesuai dengan server tersebut. Untuk membuka jenis koneksi tertentu langsung ke layanan tertentu, gunakan salah satu fungsi anggota berikut:

SetOption memungkinkan Anda mengatur opsi kueri sesi Anda, seperti nilai waktu habis, jumlah percobaan ulang, dan sebagainya.

CInternetSession fungsi SetCookieanggota , GetCookie, dan GetCookieLength menyediakan sarana untuk mengelola database cookie Win32, di mana server dan skrip mempertahankan informasi status tentang stasiun kerja klien.

Untuk informasi selengkapnya tentang tugas pemrograman Internet dasar, lihat artikel Langkah Pertama Internet: WinInet. Untuk informasi umum tentang menggunakan kelas MFC WinInet , lihat artikel Pemrograman Internet dengan WinInet.

Catatan

CInternetSession akan melempar AfxThrowNotSupportedException untuk jenis layanan yang tidak didukung. Hanya jenis layanan berikut yang saat ini didukung: FTP, HTTP, gopher, dan file.

Hierarki Warisan

CObject
CInternetSession

Persyaratan

Header: afxinet.h

CInternetSession::CInternetSession

Fungsi anggota ini dipanggil ketika CInternetSession objek dibuat.

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

Parameter

pstrAgent
Penunjuk ke string yang mengidentifikasi nama aplikasi atau entitas yang memanggil fungsi Internet (misalnya, "Browser Internet Microsoft"). Jika pstrAgent adalah NULL (default), kerangka kerja memanggil fungsi AfxGetAppNameglobal , yang mengembalikan string null-terminated yang berisi nama aplikasi. Beberapa protokol menggunakan string ini untuk mengidentifikasi aplikasi Anda ke server.

dwContext
Pengidentifikasi konteks untuk operasi. dwContext mengidentifikasi informasi status operasi yang dikembalikan oleh CInternetSession::OnStatusCallback. Default diatur ke 1; namun, Anda dapat secara eksplisit menetapkan ID konteks tertentu untuk operasi tersebut. Objek dan pekerjaan apa pun yang dilakukannya akan dikaitkan dengan ID konteks tersebut.

dwAccessType
Jenis akses yang diperlukan. Berikut ini adalah nilai yang valid, tepat salah satunya dapat disediakan:

  • INTERNET_OPEN_TYPE_PRECONFIG Sambungkan menggunakan pengaturan yang telah dikonfigurasi sebelumnya di registri. Jenis akses ini diatur sebagai default. Untuk menyambungkan melalui proksi TIS, atur dwAccessType ke nilai ini; Anda kemudian mengatur registri dengan tepat.

  • INTERNET_OPEN_TYPE_DIRECT Sambungkan langsung ke Internet.

  • INTERNET_OPEN_TYPE_PROXY Sambungkan melalui proksi CERN.

Untuk informasi tentang menyambungkan dengan berbagai jenis proksi, lihat Langkah-langkah dalam Aplikasi Klien FTP Umum.

pstrProxyName
Nama proksi CERN pilihan jika dwAccessType ditetapkan sebagai INTERNET_OPEN_TYPE_PROXY. Default adalah NULL.

pstrProxyBypass
Penunjuk ke string yang berisi daftar alamat server opsional. Alamat ini dapat dilewati saat menggunakan akses proksi. NULL Jika nilai disediakan, daftar bypass akan dibaca dari registri. Parameter ini bermakna hanya jika dwAccessType diatur ke INTERNET_OPEN_TYPE_PROXY.

dwFlags
Menunjukkan berbagai opsi penembolokan. Default diatur ke 0. Nilai yang mungkin meliputi:

  • INTERNET_FLAG_DONT_CACHE Jangan cache data, baik secara lokal atau di server gateway apa pun.

  • INTERNET_FLAG_OFFLINE Operasi pengunduhan hanya dipenuhi melalui cache persisten. Jika item tidak ada di cache, kode kesalahan yang sesuai akan dikembalikan. Bendera ini dapat dikombinasikan dengan operator bitwise "atau" (|).

Keterangan

CInternetSession adalah fungsi Internet pertama yang dipanggil oleh aplikasi. Ini menginisialisasi struktur data internal dan mempersiapkan panggilan di masa mendatang dari aplikasi.

Jika tidak ada koneksi Internet yang dapat dibuka, CInternetSession melempar .AfxThrowInternetException

Contoh

Lihat contoh untuk CFtpFileFind.

CInternetSession::Close

Panggil fungsi anggota ini ketika aplikasi Anda telah selesai menggunakan CInternetSession objek .

virtual void Close();

Contoh

Lihat contoh untuk CFtpFileFind.

CInternetSession::EnableStatusCallback

Panggil fungsi anggota ini untuk mengaktifkan panggilan balik status.

BOOL EnableStatusCallback(BOOL bEnable = TRUE);

Parameter

bEnable
Menentukan apakah panggilan balik diaktifkan atau dinonaktifkan. Default adalah TRUE.

Tampilkan Nilai

Bukan nol jika berhasil; jika tidak, 0. Jika panggilan gagal, tentukan penyebab kegagalan dengan memeriksa objek yang dilemparkan CInternetException .

Keterangan

Saat menangani panggilan balik status, Anda dapat memberikan status tentang kemajuan operasi (seperti menyelesaikan nama, menyambungkan ke server, dan sebagainya) di bilah status aplikasi. Menampilkan status operasi sangat diinginkan selama operasi jangka panjang.

Karena panggilan balik terjadi selama pemrosesan permintaan, aplikasi harus menghabiskan waktu sesedikitan mungkin dalam panggilan balik untuk mencegah degradasi throughput data ke jaringan. Misalnya, memasang kotak dialog dalam panggilan balik mungkin merupakan operasi yang panjang sehingga server mengakhiri permintaan.

Panggilan balik status tidak dapat dihapus selama panggilan balik apa pun tertunda.

Untuk menangani operasi apa pun secara asinkron, Anda harus membuat utas Anda sendiri atau menggunakan fungsi WinInet tanpa MFC.

CInternetSession::GetContext

Panggil fungsi anggota ini untuk mendapatkan nilai konteks untuk sesi aplikasi tertentu.

DWORD_PTR GetContext() const;

Tampilkan Nilai

Pengidentifikasi konteks yang ditentukan aplikasi.

Keterangan

OnStatusCallback menggunakan ID konteks yang dikembalikan oleh GetContext untuk melaporkan status aplikasi tertentu. Misalnya, ketika pengguna mengaktifkan permintaan Internet yang melibatkan mengembalikan informasi status, panggilan balik status menggunakan ID konteks untuk melaporkan status pada permintaan tertentu tersebut. Jika pengguna mengaktifkan dua permintaan Internet terpisah yang keduanya melibatkan informasi status pengembalian, OnStatusCallback menggunakan pengidentifikasi konteks untuk mengembalikan status tentang permintaan yang sesuai. Akibatnya, pengidentifikasi konteks digunakan untuk semua operasi panggilan balik status, dan dikaitkan dengan sesi hingga sesi berakhir.

Untuk informasi selengkapnya tentang operasi asinkron, lihat artikel Langkah Pertama Internet: WinInet.

CInternetSession::GetCookie

Fungsi anggota ini mengimplementasikan perilaku fungsi InternetGetCookieWin32 , seperti yang dijelaskan dalam Windows SDK.

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

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

Parameter

pstrUrl
Penunjuk ke string yang berisi URL.

pstrCookieName
Penunjuk ke string yang berisi nama cookie yang akan didapatkan untuk URL yang ditentukan.

pstrCookieData
Pada kelebihan beban pertama, penunjuk ke string yang berisi alamat buffer yang menerima data cookie. Nilai ini bisa berupa NULL. Pada kelebihan beban kedua, referensi ke CString objek untuk menerima data cookie.

dwBufLen
Variabel yang menentukan ukuran pstrCookieData buffer. Jika fungsi berhasil, buffer menerima jumlah data yang disalin ke pstrCookieData buffer. Jika pstrCookieData adalah NULL, parameter ini menerima nilai yang menentukan ukuran buffer yang diperlukan untuk menyalin semua data cookie.

Tampilkan Nilai

Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Jika panggilan gagal, panggil fungsi GetLastError Win32 untuk menentukan penyebab kesalahan. Nilai kesalahan berikut berlaku:

  • ERROR_NO_MORE_ITEMS Tidak ada cookie untuk URL yang ditentukan dan semua orang tuanya.

  • ERROR_INSUFFICIENT_BUFFER Nilai yang diteruskan dwBufLen tidak cukup untuk menyalin semua data cookie. Nilai yang dikembalikan adalah dwBufLen ukuran buffer yang diperlukan untuk mendapatkan semua data.

Keterangan

Pada kelebihan beban kedua, MFC mengambil data cookie ke dalam objek yang disediakan CString .

CInternetSession::GetCookieLength

Panggil fungsi anggota ini untuk mendapatkan panjang cookie yang disimpan dalam buffer.

static DWORD GetCookieLength(
    LPCTSTR pstrUrl,
    LPCTSTR pstrCookieName);

Parameter

pstrUrl
Penunjuk ke string yang berisi URL

pstrCookieName
Penunjuk ke string yang berisi nama cookie.

Tampilkan Nilai

Nilai DWORD yang menunjukkan panjang cookie, disimpan dalam buffer. Nol jika tidak ada cookie dengan nama yang ditunjukkan oleh pstrCookieName ada.

Keterangan

Nilai ini digunakan oleh GetCookie.

CInternetSession::GetFtpConnection

Panggil fungsi anggota ini untuk membuat koneksi FTP dan mendapatkan penunjuk ke CFtpConnection objek.

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

Parameter

pstrServer
Penunjuk ke string yang berisi nama server FTP.

pstrUserName
Penunjuk ke string yang dihentikan null yang menentukan nama pengguna untuk masuk. Jika NULL, defaultnya adalah anonim.

pstrPassword
Penunjuk ke string yang dihentikan null yang menentukan kata sandi yang akan digunakan untuk masuk. Jika keduanya pstrPassword dan pstrUserName adalah NULL, kata sandi anonim default adalah nama email pengguna. Jika pstrPassword adalah NULL (atau string kosong) tetapi pstrUserName bukan NULL, kata sandi kosong digunakan. Tabel berikut ini menjelaskan perilaku untuk empat pengaturan yang mungkin dari pstrUserName dan pstrPassword:

pstrUserName pstrPassword Nama pengguna dikirim ke server FTP Kata sandi yang dikirim ke server FTP
NULL atau " " NULL atau " " "anonymous" Nama email pengguna
Non-StringNULL NULL atau " " pstrUserName " "
NULL Non-StringNULL KESALAHAN KESALAHAN
Non-StringNULL Non-StringNULL pstrUserName pstrPassword

nPort
Angka yang mengidentifikasi port TCP/IP untuk digunakan di server.

bPassive
Menentukan mode pasif atau aktif untuk sesi FTP ini. Jika diatur ke TRUE, ini mengatur API dwFlag Win32 ke INTERNET_FLAG_PASSIVE.

Tampilkan Nilai

Penunjuk ke CFtpConnection objek. Jika panggilan gagal, tentukan penyebab kegagalan dengan memeriksa objek yang dilemparkan CInternetException .

Keterangan

GetFtpConnection menyambungkan ke server FTP, dan membuat dan mengembalikan penunjuk ke CFTPConnection objek. Ini tidak melakukan operasi tertentu di server. Jika Anda ingin membaca atau menulis ke file, misalnya, Anda harus melakukan operasi tersebut sebagai langkah terpisah. Lihat kelas CFtpConnection dan CFtpFileFind untuk informasi tentang mencari file, membuka file, dan membaca atau menulis ke file. Lihat artikel Pemrograman Internet dengan WinInet untuk langkah-langkah dalam melakukan tugas koneksi FTP umum.

Contoh

Lihat contoh untuk CFtpFileFind.

CInternetSession::GetGopherConnection

Panggil fungsi anggota ini untuk membuat koneksi gopher baru dan mendapatkan penunjuk ke CGopherConnection objek.

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

Parameter

pstrServer
Penunjuk ke string yang berisi nama server gopher.

pstrUserName
Penunjuk ke string yang berisi nama pengguna.

pstrPassword
Penunjuk ke string yang berisi kata sandi akses.

nPort
Angka yang mengidentifikasi port TCP/IP untuk digunakan di server.

Tampilkan Nilai

Penunjuk ke CGopherConnection objek. Jika panggilan gagal, tentukan penyebab kegagalan dengan memeriksa objek yang dilemparkan CInternetException .

Keterangan

GetGopherConnection menyambungkan ke server gopher, dan membuat dan mengembalikan penunjuk ke CGopherConnection objek. Ini tidak melakukan operasi tertentu di server. Jika Anda ingin membaca atau menulis data, misalnya, Anda harus melakukan operasi tersebut sebagai langkah terpisah. Lihat kelas CGopherConnection, CGopherFile, dan CGopherFileFind untuk informasi tentang mencari file, membuka file, dan membaca atau menulis ke file. Untuk informasi tentang menelusuri situs FTP, lihat fungsi OpenURLanggota . Lihat artikel Pemrograman Internet dengan WinInet untuk langkah-langkah dalam melakukan tugas koneksi gopher umum.

CInternetSession::GetHttpConnection

Panggil fungsi anggota ini untuk membuat koneksi HTTP dan mendapatkan penunjuk ke CHttpConnection objek.

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

Parameter

pstrServer
Penunjuk ke string yang berisi nama server HTTP.

nPort
Angka yang mengidentifikasi port TCP/IP untuk digunakan di server.

pstrUserName
Penunjuk ke string yang berisi nama pengguna.

pstrPassword
Penunjuk ke string yang berisi kata sandi akses.

dwflags
INTERNET_FLAG_* Kombinasi bendera apa pun. Lihat tabel di bagian CHttpConnection::OpenRequest Keterangan untuk deskripsi dwFlags nilai.

Tampilkan Nilai

Penunjuk ke CHttpConnection objek. Jika panggilan gagal, tentukan penyebab kegagalan dengan memeriksa objek yang dilemparkan CInternetException .

Keterangan

GetHttpConnection menyambungkan ke server HTTP, dan membuat dan mengembalikan penunjuk ke CHttpConnection objek. Ini tidak melakukan operasi tertentu di server. Jika Anda ingin mengkueri header HTTP, misalnya, Anda harus melakukan operasi ini sebagai langkah terpisah. Lihat kelas CHttpConnection dan CHttpFile untuk informasi tentang operasi yang dapat Anda lakukan dengan menggunakan koneksi ke server HTTP. Untuk informasi tentang menelusuri situs HTTP, lihat fungsi OpenURLanggota . Lihat artikel Pemrograman Internet dengan WinInet untuk langkah-langkah dalam melakukan tugas koneksi HTTP umum.

CInternetSession::OnStatusCallback

Fungsi anggota ini dipanggil oleh kerangka kerja untuk memperbarui status ketika panggilan balik status diaktifkan dan operasi tertunda.

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

Parameter

dwContext
Nilai konteks yang disediakan oleh aplikasi.

dwInternetStatus
Kode status yang menunjukkan mengapa panggilan balik sedang dibuat. Lihat Keterangan untuk tabel nilai yang mungkin.

lpvStatusInformation
Penunjuk ke buffer yang berisi informasi yang berkaitan dengan panggilan balik ini.

dwStatusInformationLength
Ukuran lpvStatusInformation.

Keterangan

Anda harus terlebih dahulu memanggil EnableStatusCallback untuk memanfaatkan panggilan balik status.

Parameter dwInternetStatus menunjukkan operasi yang sedang dilakukan dan menentukan isinya lpvStatusInformation . dwStatusInformationLength menunjukkan panjang data yang disertakan dalam lpvStatusInformation. Nilai status berikut untuk dwInternetStatus didefinisikan sebagai berikut:

Nilai Makna
INTERNET_STATUS_RESOLVING_NAME Mencari alamat IP nama yang terkandung dalam lpvStatusInformation.
INTERNET_STATUS_NAME_RESOLVED Berhasil menemukan alamat IP nama yang terkandung dalam lpvStatusInformation.
INTERNET_STATUS_CONNECTING_TO_SERVER Menyambungkan ke alamat soket (SOCKADDR) yang ditujukkan oleh lpvStatusInformation.
INTERNET_STATUS_CONNECTED_TO_SERVER Berhasil tersambung ke alamat soket (SOCKADDR) yang ditujukkan oleh lpvStatusInformation.
INTERNET_STATUS_SENDING_REQUEST Mengirim permintaan informasi ke server. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_REQUEST_SENT Berhasil mengirim permintaan informasi ke server. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_RECEIVING_RESPONSE Menunggu server merespons permintaan. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_RESPONSE_RECEIVED Berhasil menerima respons dari server. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_CLOSING_CONNECTION Menutup koneksi ke server. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_CONNECTION_CLOSED Berhasil menutup koneksi ke server. Parameternya lpvStatusInformation adalah NULL.
INTERNET_STATUS_HANDLE_CREATED Digunakan oleh fungsi InternetConnect API Win32 untuk menunjukkan bahwa ia telah membuat handel baru. Ini memungkinkan aplikasi memanggil fungsi InternetCloseHandle Win32 dari utas lain jika koneksi memakan waktu terlalu lama. Lihat Windows SDKuntuk informasi selengkapnya tentang fungsi-fungsi ini.
INTERNET_STATUS_HANDLE_CLOSING Berhasil menghentikan nilai handel ini.

Ambil alih fungsi anggota ini untuk memerlukan beberapa tindakan sebelum rutinitas panggilan balik status dilakukan.

Catatan

Panggilan balik status memerlukan perlindungan status utas. Jika Anda menggunakan MFC di pustaka bersama, tambahkan baris berikut ke awal penimpaan Anda:

AFX_MANAGE_STATE(AfxGetAppModuleState());

Untuk informasi selengkapnya tentang operasi asinkron, lihat artikel Langkah Pertama Internet: WinInet.

CInternetSession::OpenURL

Panggil fungsi anggota ini untuk mengirim permintaan yang ditentukan ke server HTTP dan izinkan klien menentukan header RFC822, MIME, atau HTTP tambahan untuk dikirim bersama dengan permintaan.

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

Parameter

pstrURL
Penunjuk ke nama URL untuk mulai membaca. Hanya URL yang dimulai dengan file:, ftp:, gopher:, atau http: yang didukung. Menegaskan jika pstrURL adalah NULL.

dwContext
Nilai yang ditentukan aplikasi yang diteruskan dengan handel yang dikembalikan dalam panggilan balik.

dwFlags
Bendera yang menjelaskan cara menangani koneksi ini. Lihat Keterangan untuk informasi selengkapnya tentang bendera yang valid. Bendera yang valid adalah:

  • INTERNET_FLAG_TRANSFER_ASCII Defaultnya. Transfer file sebagai teks ASCII.

  • INTERNET_FLAG_TRANSFER_BINARY Transfer file sebagai file biner.

  • INTERNET_FLAG_RELOAD Dapatkan data dari kawat bahkan jika di-cache secara lokal.

  • INTERNET_FLAG_DONT_CACHE Jangan cache data, baik secara lokal atau di gateway apa pun.

  • INTERNET_FLAG_SECURE Bendera ini hanya berlaku untuk permintaan HTTP. Ini meminta transaksi aman pada kawat dengan Secure Sockets Layer atau PCT.

  • INTERNET_OPEN_FLAG_USE_EXISTING_CONNECT Jika memungkinkan, gunakan kembali koneksi yang ada ke server untuk permintaan baru yang dihasilkan alih-alih OpenUrl membuat sesi baru untuk setiap permintaan koneksi.

  • INTERNET_FLAG_PASSIVE Digunakan untuk situs FTP. Menggunakan semantik FTP pasif. Digunakan dengan CInternetConnection dari OpenURL.

pstrHeaders
Penunjuk ke string yang berisi header yang akan dikirim ke server HTTP.

dwHeadersLength
Panjangnya, dalam karakter, dari header tambahan. Jika ini dan -1L pstrHeaders non-NULL, maka pstrHeaders diasumsikan nol dihentikan dan panjangnya dihitung.

Tampilkan Nilai

Mengembalikan handel file untuk layanan Internet tipe FTP, GOPHER, HTTP, dan FILE saja. Mengembalikan NULL jika penguraian tidak berhasil.

Penunjuk yang OpenURL kembali tergantung pada pstrURLjenis layanan. Tabel di bawah ini mengilustrasikan kemungkinan penunjuk OpenURL dapat kembali.

Jenis URL Mengembalikan
file:// CStdioFile*
http:// CHttpFile*
gopher:// CGopherFile*
ftp:// CInternetFile*

Keterangan

Parameter dwFlags harus menyertakan atau INTERNET_FLAG_TRANSFER_ASCII INTERNET_FLAG_TRANSFER_BINARY, tetapi tidak keduanya. Bendera yang tersisa dapat dikombinasikan dengan operator bitwise "atau" (|).

OpenURL, yang membungkus fungsi InternetOpenURLWin32 , hanya memungkinkan mengunduh, mengambil, dan membaca data dari server Internet. OpenURL tidak mengizinkan manipulasi file pada lokasi jarak jauh, sehingga tidak CInternetConnection memerlukan objek.

Untuk menggunakan fungsi khusus koneksi (yaitu, khusus protokol), seperti menulis ke file, Anda harus membuka sesi, lalu membuka jenis koneksi tertentu, lalu menggunakan koneksi tersebut untuk membuka file dalam mode yang diinginkan. Lihat CInternetConnection untuk informasi selengkapnya tentang fungsi khusus koneksi.

CInternetSession::operator HINTERNET

Gunakan operator ini untuk mendapatkan handel Windows untuk sesi Internet saat ini.

operator HINTERNET() const;

CInternetSession::SetCookie

Mengatur cookie untuk URL yang ditentukan.

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

Parameter

pstrUrl
Penunjuk ke string yang dihentikan null yang menentukan URL tempat cookie harus diatur.

pstrCookieName
Penunjuk ke string yang berisi nama cookie.

pstrCookieData
Penunjuk ke string yang berisi data string aktual untuk dikaitkan dengan URL.

Tampilkan Nilai

Mengembalikan TRUE jika berhasil, atau FALSE sebaliknya. Untuk mendapatkan kode kesalahan tertentu, panggil GetLastError.

Keterangan

Fungsi anggota ini mengimplementasikan perilaku pesan InternetSetCookieWin32 , seperti yang dijelaskan dalam Windows SDK.

CInternetSession::SetOption

Panggil fungsi anggota ini untuk mengatur opsi untuk sesi Internet.

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

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

Parameter

dwOption
Opsi Internet untuk diatur. Lihat Bendera Opsi di Windows SDK untuk daftar opsi yang mungkin.

lpBuffer
Buffer yang berisi pengaturan opsi.

dwBufferLength
Panjang lpBuffer atau ukuran dwValue.

dwValue
DWORD yang berisi pengaturan opsi.

dwFlags
Menunjukkan berbagai opsi penembolokan. Default diatur ke 0. Nilai yang mungkin meliputi:

  • INTERNET_FLAG_DONT_CACHE Jangan cache data, baik secara lokal atau di server gateway apa pun.

  • INTERNET_FLAG_OFFLINE Operasi pengunduhan hanya dipenuhi melalui cache persisten. Jika item tidak ada di cache, kode kesalahan yang sesuai akan dikembalikan. Bendera ini dapat dikombinasikan dengan operator bitwise "atau" (|).

Tampilkan Nilai

Jika operasi berhasil, nilai TRUE dikembalikan. Jika terjadi kesalahan, nilai FALSE dikembalikan. Jika panggilan gagal, fungsi GetLastError Win32 dapat dipanggil untuk menentukan penyebab kesalahan.

Lihat juga

CObject Kelas
Bagan Hierarki
CInternetConnection Kelas
CHttpConnection Kelas
CFtpConnection Kelas
CGopherConnection Kelas