Fungsi BuildCommDCBA (winbase.h)
Mengisi struktur DCB
Sintaksis
BOOL BuildCommDCBA(
[in] LPCSTR lpDef,
[out] LPDCB lpDCB
);
Parameter
[in] lpDef
Informasi kontrol perangkat. Fungsi mengambil string ini, mengurainya, dan kemudian mengatur nilai yang sesuai dalam struktur DCB
String harus memiliki formulir yang sama dengan mode argumen baris perintah:
COMx[:][baud=b][parity=p][data=d][stop=s][to={on|off}][xon={on|off}][odsr={on|off}][octs={on|off}][dtr={on|off|hs}][rts={on|off|hs|tg}][idsr={on|off}]
Nama perangkat bersifat opsional, tetapi harus menentukan perangkat yang valid jika digunakan.
Misalnya, string berikut menentukan laju baud 1200, tanpa paritas, 8 bit data, dan 1 bit berhenti:
baud=1200 parity=N data=8 stop=1
[out] lpDCB
Penunjuk ke struktur DCB
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.
Komentar
Fungsi
- Jika laju baud yang ditentukan adalah 110, fungsi mengatur bit berhenti ke 2 agar tetap kompatibel dengan mode sistem perintah.
- Secara default, BuildCommDCB menonaktifkan XON/XOFF dan kontrol alur perangkat keras. Untuk mengaktifkan kontrol alur, Anda harus secara eksplisit mengatur anggota struktur
DCB yang sesuai.
Ada bentuk yang lebih lama dan lebih baru dari mode sintaks. Fungsi
Bentuk yang lebih baru dari mode
- Untuk string yang tidak diakhir dengan x atau p:
- fInX, fOutX, fOutXDsrFlow, dan fOutXCtsFlow semuanya diatur ke FALSE
- fDtrControl diatur ke DTR_CONTROL_ENABLE
- fRtsControl diatur ke RTS_CONTROL_ENABLE
- Untuk string yang diakhir dengan x:
fInX dan fOutX keduanya diatur ke TRUE - fOutXDsrFlow dan fOutXCtsFlow keduanya diatur ke FALSE
- fDtrControl diatur ke DTR_CONTROL_ENABLE
- fRtsControl diatur ke RTS_CONTROL_ENABLE
- Untuk string yang diakhir dengan p:
fInX dan fOutX keduanya diatur ke FALSE- fOutXDsrFlow dan fOutXCtsFlow keduanya diatur ke TRUE
- fDtrControl diatur ke DTR_CONTROL_HANDSHAKE
- fRtsControl diatur ke RTS_CONTROL_HANDSHAKE
Nota
Header winbase.h mendefinisikan BuildCommDCB sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.
Persyaratan
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows XP |
server minimum yang didukung |
Windows Server 2003 |
Platform Target |
Windows |
Header |
winbase.h (termasuk Windows.h) |
Pustaka |
Kernel32.lib |
DLL |
Kernel32.dll |
Lihat juga
Sumber Daya Komunikasi
DCB
SetCommState