comm/datamodem
Kelas perangkat comm/datamodem terdiri dari perangkat datamodem. Anda mengakses perangkat ini dengan menggunakan fungsi file dan komunikasi. Perangkat di kelas ini dikaitkan dengan perangkat baris yang mendukung jenis media LINEMEDIAMODE_DATAMODEM, yang ditentukan dalam anggota dwMediaModes dari struktur LINEDEVCAPS untuk perangkat baris.
Fungsi lineGetID mengisi struktur VARSTRING , mengatur dwStringFormat ke nilai STRINGFORMAT_BINARY dan menambahkan anggota tambahan ini:
HANDLE hComm; // file handle to data modem
CHAR szDeviceName[1]; // name of data modem
Anggota hComm adalah handel dari port komunikasi terbuka. Anggota ini adalah NULL jika port belum terbuka atau jika parameter dwSelect dari lineGetID bukan nilai LINECALLSELECT_CALL. Jika panggilan aktif, penyedia layanan biasanya membuka port itu sendiri untuk mendapatkan kontrol langsung perangkat keras komunikasi, tetapi hanya diperlukan untuk mengembalikan handel yang valid jika saluran tersambung. Penyedia layanan membuka port menggunakan nilai FILE_FLAG_OVERLAPPED lalu mengonfigurasi port menggunakan pengaturan yang ditentukan oleh fungsi lineSetDevConfig . Anda dapat mengatur opsi konfigurasi tambahan untuk perangkat dengan menggunakan fungsi komunikasi dengan handel yang dikembalikan.
Anggota szDeviceName adalah string null-terminated yang menentukan nama port komunikasi yang terkait dengan baris, alamat, atau panggilan.
Jika hComm adalah handel yang valid, Anda dapat menggunakannya dalam panggilan berikutnya ke fungsi file, seperti ReadFile dan WriteFile, untuk mengirim dan menerima data pada panggilan. Ketika Anda selesai menggunakan port komunikasi dan sebaiknya sebelum Anda menggunakan fungsi lineDeallocateCall untuk membatalkan alokasi panggilan, Anda harus menutup port dengan menggunakan fungsi CloseHandle .
Saat menggunakan fungsi lineGetDevConfig dan lineSetDevConfig , beberapa penyedia layanan mengharuskan data konfigurasi untuk kelas perangkat ini memiliki format berikut:
typedef struct tagDEVCFG {
DEVCFGHDR dfgHdr;
COMMCONFIG commconfig;
} DEVCFG, *PDEVCFG, FAR* LPDEVCFG;
// Device setting information
typedef struct tagDEVCFGDR {
DWORD dwSize;
DWORD dwVersion;
WORD fwOptions;
WORD wWaitBong;
} DEVCFGHDR;
Berikut ini adalah informasi konfigurasi perangkat untuk digunakan dengan fungsi lineGetDevConfig dan lineSetDevConfig .
-
dwSize
-
Jumlah ukuran struktur DEVCFGHDR dan ukuran aktual struktur COMMCONFIG .
-
dwVersion
-
Nomor versi struktur DevConfig Unimodem. Anggota ini dapat MDMCFG_VERSION (0x00010003).
-
fwOptions
-
Bendera opsi yang muncul di halaman Opsi Unimodem. Anggota ini bisa menjadi kombinasi dari nilai-nilai ini:
-
TERMINAL_PRE (1)
-
Menampilkan layar pra-terminal.
-
TERMINAL_POST (2)
-
Menampilkan layar pasca-terminal.
-
MANUAL_DIAL (4)
-
Memanggil telepon secara manual, jika mampu melakukannya.
-
LAUNCH_LIGHTS (8)
-
Menampilkan ikon modem di area status bilah tugas.
Hanya nilai LAUNCH_LIGHTS yang diatur secara default
-
-
wWaitBong
-
Jumlah detik (dalam dua detik granularitas) untuk menggantikan tunggu nada kredit ($).
-
Commconfig
-
Struktur COMMCONFIG yang dapat digunakan dengan fungsi komunikasi dan konfigurasi modem.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk