VistaでWinsockを使わない理由

Vistaで動作するプログラムを作る場合、odawaraは基本的に.NETしか使わないようにしている。なぜかというと、昔、winsockのバグに当たって苦しんだことがあるから。
Vistaのバグ - odawaraの「はてな de メモ」
この時調べたのはあ、VistaにおけるWinsockはTDXっていう層を経由して実行されるんだけど、TDXがバグってる場合が多いってこと。

MSの資料ではsetsockoptがバグる、となっているんだけど(odawaraもこれを拾った)、(当時無印だったので)今また調べてみると、TDX周りでブルースクリーンになる人がまだいるらしい。
今度はtdx.sysでブルーバック頻発: グリム家のほのぼの日記
http://hotstreet.vaio.sony.co.jp/article/article.php?id=55011
そんなわけで、VistaではWinsockを使いたくない。可能な限り(たとえCLIを使っても).NETで書く。