Bagikan melalui


Fungsi BuildCommDCBAndTimeoutsA (winbase.h)

Menerjemahkan string definisi perangkat ke dalam kode blok kontrol perangkat yang sesuai dan menempatkannya ke dalam blok kontrol perangkat. Fungsi ini juga dapat mengatur nilai waktu habis, termasuk kemungkinan tidak ada waktu habis, untuk perangkat; perilaku fungsi dalam hal ini tergantung pada konten string definisi perangkat.

Sintaks

BOOL BuildCommDCBAndTimeoutsA(
  [in]  LPCSTR         lpDef,
  [out] LPDCB          lpDCB,
  [out] LPCOMMTIMEOUTS lpCommTimeouts
);

Parameter

[in] lpDef

Informasi kontrol perangkat. Fungsi mengambil string ini, mengurainya, lalu mengatur nilai yang sesuai dalam struktur DCB yang ditunjukkan oleh lpDCB.

String harus memiliki formulir yang sama dengan argumen baris perintah perintah mode :

COMx[:][baud={11|110|15 150|30||300|60|600|12|1200|24|2400|484800||96|9600|19|19200}][parity={n | e |O|M|s}] [data={5|6|7|8}][stop={11.5||2}][to={on|off}][xon={on|off}][odsr={on|off}][octs={on|off}][dtr={on|off|hs}][rts={on|off|hs|tg}][idsr={on|off}]

Substring "baud" dapat berupa salah satu nilai yang tercantum, yang berpasangan. Nilai dua digit adalah dua digit pertama dari nilai terkait yang diwakilinya. Misalnya, 11 mewakili 110 baud, 19 mewakili 19.200 baud.

Substring "paritas" menunjukkan bagaimana bit paritas digunakan untuk mendeteksi kesalahan transmisi. Nilai mewakili "none", "even", "odd",
"mark", dan "space".

Untuk informasi selengkapnya, lihat referensi perintah Mode di TechNet.

Misalnya, string berikut menentukan tingkat baud 1200, tanpa paritas, 8 bit data, dan 1 stop bit:

baud=1200 parity=N data=8 stop=1

[out] lpDCB

Penunjuk ke struktur DCB yang menerima informasi dari string informasi kontrol perangkat yang ditunjukkan oleh lpDef. Struktur DCB ini menentukan pengaturan kontrol untuk perangkat komunikasi.

[out] lpCommTimeouts

Penunjuk ke struktur COMMTIMEOUTS yang menerima informasi waktu habis.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Fungsi BuildCommDCBAndTimeouts memodifikasi perilaku pengaturan waktu habis berdasarkan ada atau tidak adanya substring "to={on|off}" di lpDef:

  • Jika string tersebut berisi substring "to=on", fungsi mengatur anggota WriteTotalTimeoutConstant dari struktur COMMTIMEOUTS menjadi 60000 dan semua anggota lainnya ke 0.
  • Jika string tersebut berisi substring "to=off", fungsi akan mengatur anggota COMMTIMEOUTS ke 0.
  • Jika string tersebut tidak menentukan substring "to={on|off}", fungsi mengabaikan struktur COMMTIMEOUTS di lpCommTimeouts.
Untuk informasi selengkapnya, lihat Keterangan untuk fungsi BuildCommDCB .

Catatan

Header winbase.h mendefinisikan BuildCommDCBAndTimeouts sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosedur 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

Persyaratan Nilai
Klien minimum yang didukung Windows XP
Server minimum yang didukung Windows Server 2003
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

BuildCommDCB

COMMTIMEOUTS

Fungsi Komunikasi

Sumber Daya Komunikasi

DCB

GetCommTimeouts

SetCommTimeouts