Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A classe de dispositivo comm/datamodem consiste em dispositivos datamodem. Você acessa esses dispositivos usando a de arquivo e as funções de comunicação . Os dispositivos nesta classe estão associados a dispositivos de linha que suportam o tipo de mídia LINEMEDIAMODE_DATAMODEM, que é especificado no dwMediaModes membro da estrutura deLINEDEVCAPSpara o dispositivo de linha.
A função lineGetID preenche uma estrutura de VARSTRING, definindo dwStringFormat ao valor STRINGFORMAT_BINARY e anexando esses membros adicionais:
HANDLE hComm; // file handle to data modem
CHAR szDeviceName[1]; // name of data modem
O membro hComm é o identificador da porta de comunicações aberta. Este membro é NULL se a porta ainda não estiver aberta ou se o parâmetro dwSelect de lineGetID não for o valor LINECALLSELECT_CALL. Se uma chamada estiver ativa, o provedor de serviços normalmente abre a própria porta para obter controle direto do hardware de comunicações, mas só é necessário retornar um identificador válido se a linha estiver conectada. O provedor de serviços abre a porta usando o valor FILE_FLAG_OVERLAPPED e, em seguida, configura a porta usando as configurações especificadas pela funçãolineSetDevConfig. Você pode definir opções de configuração adicionais para o dispositivo usando funções de comunicação com a alça retornada.
O membro szDeviceName é uma cadeia de caracteres null-terminated que especifica o nome da porta de comunicação associada à linha, endereço ou chamada.
Se hComm for um identificador válido, você poderá usá-lo em chamadas subsequentes para funções de arquivo, como ReadFile e WriteFile , para enviar e receber dados na chamada. Quando terminar de usar a porta de comunicação e, de preferência, antes de usar a função lineDeallocateCall para desalocar a chamada, você deve fechar a porta usando a funçãoCloseHandle.
Ao usar o lineGetDevConfig e funções de lineSetDevConfig, alguns provedores de serviços exigem que os dados de configuração para essa classe de dispositivo tenham o seguinte formato:
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;
A seguir estão as informações de configuração do dispositivo para uso com olineGetDevConfig e funções lineSetDevConfig.
-
dwSize
-
Soma do tamanho da estrutura de DEVCFGHDR e do tamanho real da estruturaCOMMCONFIG.
-
dwVersion
-
Número da versão do Unimodem DevConfig estrutura. Este membro pode ser MDMCFG_VERSION (0x00010003).
-
fwOptions
-
Sinalizadores de opção que aparecem na página Opção Unimodem. Este membro pode ser uma combinação destes valores:
-
TERMINAL_PRE (1)
-
Exibe a tela do pré-terminal.
-
TERMINAL_POST (2)
-
Exibe a tela pós-terminal.
-
MANUAL_DIAL (4)
-
Marca o telefone manualmente, se for capaz de fazê-lo.
-
LAUNCH_LIGHTS (8)
-
Exibe o ícone do modem na área de status da barra de tarefas.
Somente o valor LAUNCH_LIGHTS é definido por padrão
-
-
wWaitBong
-
Número de segundos (em dois segundos de granularidade) para substituir a espera pelo tom de crédito ($).
-
Commconfig
-
COMMCONFIG estrutura que pode ser usada com as funções de comunicação e configuração do modem.