Funzione BuildCommDCBA (winbase.h)
Riempie una struttura DCB specificata con valori specificati in una stringa di controllo del dispositivo. La stringa di controllo del dispositivo usa la sintassi del comando mode .
Sintassi
BOOL BuildCommDCBA(
[in] LPCSTR lpDef,
[out] LPDCB lpDCB
);
Parametri
[in] lpDef
Informazioni sul controllo del dispositivo. La funzione accetta questa stringa, la analizza e quindi imposta i valori appropriati nella struttura DCB a cui punta lpDCB.
La stringa deve avere lo stesso modulo degli argomenti della riga di comando del comando della modalità :
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}][idsr={on|off}]
Il nome del dispositivo è facoltativo, ma deve specificare un dispositivo valido se usato.
Ad esempio, la stringa seguente specifica una velocità baud di 1200, nessuna parità, 8 bit di dati e 1 bit di arresto:
baud=1200 parity=N data=8 stop=1
[out] lpDCB
Puntatore a una struttura DCB che riceve le informazioni.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
La funzione BuildCommDCB regola solo i membri della struttura DCB interessati in modo specifico dal parametro lpDef , con le eccezioni seguenti:
- Se la velocità baud specificata è 110, la funzione imposta i bit di arresto su 2 per rimanere compatibili con il comando modalità del sistema.
- Per impostazione predefinita, BuildCommDCB disabilita il controllo del flusso XON/XOFF e hardware. Per abilitare il controllo del flusso, è necessario impostare in modo esplicito i membri appropriati della struttura DCB .
Esistono forme precedenti e più recenti della sintassi della modalità . La funzione BuildCommDCB supporta entrambi i moduli. Tuttavia, non è possibile combinare i due moduli.
La forma più recente della sintassi della modalità consente di impostare in modo esplicito i valori dei membri del controllo del flusso della struttura DCB . Se si usa una forma precedente della sintassi della modalità , la funzione BuildCommDCB imposta i membri del controllo del flusso della struttura DCB , come indicato di seguito:
- Per una stringa che non termina con una x o una p:
- fInX, fOutX, fOutXDsrFlow e fOutXCtsFlow sono tutti impostati su FALSE
- fDtrControl è impostato su DTR_CONTROL_ENABLE
- fRtsControl è impostato su RTS_CONTROL_ENABLE
- Per una stringa che termina con una x:
- fInX e fOutX sono entrambi impostati su TRUE
- fOutXXDsrFlow e fOutXCtsFlow sono entrambi impostati su FALSE
- fDtrControl è impostato su DTR_CONTROL_ENABLE
- fRtsControl è impostato su RTS_CONTROL_ENABLE
- Per una stringa che termina con un p:
- fInX e fOutX sono entrambi impostati su FALSE
- fOutXXDsrFlow e fOutXCtsFlow sono entrambi impostati su TRUE
- fDtrControl è impostato su DTR_CONTROL_HANDSHAKE
- fRtsControl è impostato su RTS_CONTROL_HANDSHAKE
Nota
L'intestazione winbase.h definisce BuildCommDCB come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP |
Server minimo supportato | Windows Server 2003 |
Piattaforma di destinazione | Windows |
Intestazione | winbase.h (include Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |