質問

どこでも見て回っていますが、IOCTL_IR_TRANSMITで使用するIR_TRANSMIT_PARAMS構造体のTransmitPortMaskに入れる値に関するドキュメントを見つけることができません。

すべてのドキュメントによると、「送信するポートを含むビットマスク」ということです。

したがって、私は最初に試しました:

PORT1 = 0x1 
PORT2 = 0x2

機能しませんでした!

次に、コンピューターですべての値を試したところ、次のことがわかりました。

PORT1 = 0x4
PORT2 = 0x2

これは奇妙な値です...特にPORT1について

もちろん、-1(または〜0、または0xFFFFFFFF)を入力すると、すべてのポートで同時にデータが送信されます。しかし、個々のポートを制御したいです。

現在、一部のユーザーから、同じバージョンのWindowsを使用しているにもかかわらず、システム上では機能しないという報告を受けています。

したがって、TransmitPortMaskに入れる値は何ですか?

  • Windows 7 RC 32ビットを使用しています。
  • Microsoft Media Center Remoteに付属のMicrosoft IR Blaster(単に互換性のあるものではなく、実際のMicrosoftのもの)を使用しています
役に立ちましたか?

解決

答えが見つかりました。後世のためにここに投稿します

ポートはマスクの最下位ビットですが、LSBitとして最後のポートです。

example with 1 port:  ---- ---- ---- ---1 LSB
example with 2 ports: ---- ---- ---- --12 LSB
example with 3 ports: ---- ---- ---- -123 LSB
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top