Bagikan melalui


Fungsi BuildCommDCBAndTimeoutsW (winbase.h)

Menerjemahkan string definisi perangkat ke dalam kode blok kontrol perangkat yang sesuai dan menempatkannya ke 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.

Sintaksis

BOOL BuildCommDCBAndTimeoutsW(
  [in]  LPCWSTR        lpDef,
  [out] LPDCB          lpDCB,
  [out] LPCOMMTIMEOUTS lpCommTimeouts
);

Parameter

[in] lpDef

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

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

COMx[:][baud={111101515030300606001212002424004848009696001919200}][ paritas={nem}][ data={5678}][stop={11,52}][to={padaoff}][xon={onoff}][odsr={padaoff}][okt={padaoff}][dtr={dihs}][rts={padaoffhstg}][idsr={dioff}]

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 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 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.

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 BuildCommDCBAndTimeouts memodifikasi perilaku pengaturan batas waktunya berdasarkan ada atau tidak adanya substring "to={on|off}" di lpDef:

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

Nota

Header winbase.h mendefinisikan BuildCommDCBAndTimeouts 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

BuildCommDCB

COMMTIMEOUTS

Communications Functions

Sumber Daya Komunikasi

DCB

GetCommTimeouts

SetCommTimeouts