영어로 읽기

다음을 통해 공유


comm/datamodem

comm/datamodem 디바이스 클래스는 datamodem 디바이스로 구성됩니다. 파일통신 기능을 사용하여 이러한 디바이스에 액세스합니다. 이 클래스의 디바이스는 줄 디바이스에 대한 LINEDEVCAPS 구조의 dwMediaModes 멤버에 지정된 LINEMEDIAMODE_DATAMODEM 미디어 형식을 지원하는 선 디바이스와 연결됩니다.

lineGetID 함수는 VARSTRING 구조를 채우고 dwStringFormat을 STRINGFORMAT_BINARY 값으로 설정하고 다음과 같은 추가 멤버를 추가합니다.

HANDLE hComm;            // file handle to data modem
CHAR   szDeviceName[1];  // name of data modem

hComm 멤버는 열린 통신 포트의 핸들입니다. 포트가 아직 열려 있지 않거나 lineGetIDdwSelect 매개 변수가 LINECALLSELECT_CALL 값이 아닌 경우 이 멤버는 NULL입니다. 호출이 활성 상태인 경우 서비스 공급자는 일반적으로 통신 하드웨어를 직접 제어하기 위해 포트 자체를 열지만 회선이 연결된 경우에만 유효한 핸들을 반환해야 합니다. 서비스 공급자는 FILE_FLAG_OVERLAPPED 값을 사용하여 포트를 연 다음 lineSetDevConfig 함수에 지정된 설정을 사용하여 포트를 구성합니다. 반환된 핸들과 통신 함수를 사용하여 디바이스에 대한 추가 구성 옵션을 설정할 수 있습니다.

szDeviceName 멤버는 줄, 주소 또는 호출과 연결된 통신 포트의 이름을 지정하는 null로 끝나는 문자열입니다.

hComm이 유효한 핸들인 경우 ReadFileWriteFile과 같은 파일 함수에 대한 후속 호출에서 이를 사용하여 호출 시 데이터를 보내고 받을 수 있습니다. 통신 포트 사용을 완료한 후 lineDeallocateCall 함수를 사용하여 호출 할당을 취소하기 전에 CloseHandle 함수를 사용하여 포트를 닫아야 합니다.

lineGetDevConfiglineSetDevConfig 함수를 사용하는 경우 일부 서비스 공급자는 이 디바이스 클래스의 구성 데이터에 다음 형식이 있어야 합니다.

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;

다음은 lineGetDevConfiglineSetDevConfig 함수에 사용할 디바이스 구성 정보입니다.

dwSize

DEVCFGHDR 구조체의 크기와 COMMCONFIG 구조체의 실제 크기의 합계입니다.

dwVersion

Unimodem DevConfig 구조체의 버전 번호입니다. 이 멤버는 MDMCFG_VERSION 수 있습니다(0x00010003).

fwOptions

Unimodem 옵션 페이지에 표시되는 옵션 플래그입니다. 이 멤버는 다음 값의 조합일 수 있습니다.

TERMINAL_PRE (1)

터미널 이전 화면을 표시합니다.

TERMINAL_POST (2)

터미널 후 화면을 표시합니다.

MANUAL_DIAL (4)

이렇게 할 수 있는 경우 휴대폰에 수동으로 전화를 겁니다.

LAUNCH_LIGHTS (8)

작업 표시줄의 상태 영역에 모뎀 아이콘을 표시합니다.

LAUNCH_LIGHTS 값만 기본적으로 설정됩니다.

wWaitBong

크레딧 톤($)에 대한 대기를 대체할 초(2초 단위)입니다.

Commconfig

통신 및 모뎀 구성 함수와 함께 사용할 수 있는 COMMCONFIG 구조체입니다.