| 4D v13.4GET SERIAL PORT MAPPING | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v13.4
 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 cadeia |   | 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