Pergunta

Eu tenho olhar ao redor em todos os lugares e não consigo encontrar qualquer documentação sobre os valores para colocar em TransmitPortMask da estrutura IR_TRANSMIT_PARAMS para uso com IOCTL_IR_TRANSMIT.

Toda a documentação diz é que é "A máscara de bits que contém as portas para transmitir on".

Assim, primeiro eu tentei:

PORT1 = 0x1 
PORT2 = 0x2

não funcionou!

Então, no meu computador, eu tentei todos os valores e descobriu que:

PORT1 = 0x4
PORT2 = 0x2

Qual é o tipo de valores estranhos ... especialmente para PORT1.

É claro que, se eu colocar -1 (ou ~ 0 ou 0xFFFFFFFF) que transmitir os dados em todas as portas simultaneamente. Mas eu quero controlar portas individuais.

Agora eu estou recebendo relatos de alguns usuários dizendo que ele não funciona em seus sistemas, mesmo que eles estão tendo a mesma versão do Windows.

Assim eu pergunto, quais são os valores que eu deveria colocar em TransmitPortMask?

  • Estou usando o Windows 7 RC 32-bits.
  • Eu estou usando um Microsoft IR Blaster (não meramente um compatível, o real Microsoft) que veio com a Microsoft Media Center remoto
Foi útil?

Solução

Eu encontrei a minha resposta. Eu postá-lo aqui para a posteridade

Os portos são os bits menos significativos da máscara, mas o último porto como o LSBit.

example with 1 port:  ---- ---- ---- ---1 LSB
example with 2 ports: ---- ---- ---- --12 LSB
example with 3 ports: ---- ---- ---- -123 LSB
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top