Vistaが発売されるちょっと前、「IPアドレスが取得できない」と嘆いている人たちがいました。Winsockの仕様が変わるわけもなし、変だな…と思っていました。とうとう悩んだその人たちは別のとあるところに調査してもらいました。返事がやってきて…

Vistaではユーザセッションがセッション1で始まるという仕様に変更されました。このプログラムはセッション番号1以上であればTerminal ServiceのAPIを使用してIPアドレスの取得を行うように実装しているため、IPアドレスの取得ができていないようです。

という返事だったとか。その改造したの、だよ(汗)。いや、Home Editionやドメインに入っていないXP ProfessionalとかでFast User Switchや、リモート接続に対応するために…ね。こういう判定まじめにやるとめっちゃ長くなりますよね。もう一度考え直してみようかな。