概要

わざわざ設定画面から切り替えるのが面倒で切り替えアプリ作ったときの方法を一応メモ。
切り替えはできるが、現在の接続先は多分取得できない。

手順

Configuration Service ProviderでXMLを送信したりします。
.NETならMicrosoft.WindowsMobile.Configurationへの参照を追加してMicrosoft.WindowsMobile.Configuration.ConfigurationManagerを使う。

1. CM_Networksで接続先一覧を取得する

を送信。
こんな返答が帰ってくる。

いろいろ見たこと無いのも混じってる。

2. CM_ProxyEntriesでプロキシ設定を取得する。

を送信する。

返答

プロキシ設定されてる接続先がある場合はごてごてしてたりnew-inet:1159じゃない場合もあるけど、
とりあえず全部の接続先を記憶しておいて、
Proxyがnew-inet:1159でDestIdが{436EF144-B4FB-4863-A041-8F905A62C572}のものを探してその接続先の要素を削除する。

3. CM_ProxyEntriesをまるごと書き換える

を送信する。
こうすることでまず丸ごとプロキシ設定を削除し、接続先を切り替え、もとのプロキシ設定をもどす。
こうしないとプロキシ設定が変になったりするので。