Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
GET SERIAL PORT MAPPING
|
GET SERIAL PORT MAPPING ( numArray ; arrayNome ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
numArray | Array inteiro longo |
![]() |
Array de número de portas | |||||
arrayNome | Array string |
![]() |
Array de nomes de portas | |||||
O comando GET SERIAL PORT MAPPING retorna dois arrays, numArray e nomeArray, contendo os números de porta serial e os nomes porta serial da máquina atual.
Esse comando é útil no Mac OS X, onde o sistema operacional aloca dinamicamente o número da porta ao usar um adaptador USB serial. Você pode endereçar qualquer porta de série usando o seu nome (estática), independentemente do seu número real.
Nota: Este comando não retorna valores significativos com portas padrão. Se você endereçar uma porta padrão, você deve passar o seu valor (0 ou 1) diretamente usando o comando SET CHANNEL (operação 4D).
Este método de projeto pode ser usado para tratar a mesma porta serial (sem protocolo), independentemente do número que foi atribuído a ele:
ARRAY TEXT($arrNomePortas;0)
ARRAY LONGINT($arrNumsPortas;0)
C_LONGINT($vNumPorta;$vNumPortaFinal)
`Para saber os números atuais das portas seriais
GET SERIAL PORT MAPPING($arrNumsPortas;$arrNomePortas)
$vPortNum:=Find in array($arrNomePortas;vPortName)
` vPortName contém o nome da porta a ser utilizada, que pode vir de uma caixa de diálogo,
` um valor armazenado em um campo, etc.
If(arrNumsPortas{$vNumPuerto}=0)
vNumPortaFinal:=0 `caso especial para Mac OS X
else
vNumPortaFinal:=arrNumsPortas{$vNumPorta}+100
End if
SET CHANNEL(vNumPortaFinal;params) `params contém os parâmetros de comunicação
... `Realize as operações desejadas
SET CHANNEL(11) `Fechar a porta
Produto: 4D
Tema: Comunicações
Número
909
Criado por: 4D 2004
Manual de linguagem 4D ( 4D v20 R7)