Ades向けのTodayアプリにWifiInfoってのがあるんだけど、
それをX01Tでも使いたいなー。という話。
もともとAdes向けに作られているだけあって、当然そのままでは動かなかった。
接続状況を表示することはできてもOn/Offはできなかった。
そりゃぁまぁAdes用に作ってあるんだから動かなくて当然さ。
しかしこのTodayアプリにはソースがついていた。
ソースついてるなら戦えるよね。
ということで戦闘開始。
といってもOn/Offしてるところ探してOn/Offの手法を書き換えただけですが。
#ifdef X01T static VOID SetWLan() { SHELLEXECUTEINFO si = {sizeof(SHELLEXECUTEINFO), 0, NULL, NULL, L"\\Windows\\tfwifi.exe", NULL, L"\\Windows", SW_SHOW, 0, NULL, NULL, NULL, 0, NULL, NULL}; ShellExecuteEx(&si); if (GetWifiState() & SN_WIFISTATEPOWERON_BITMASK) { g_bWlanPowerOn = FALSE; } else { g_bWlanPowerOn = TRUE; } } #else static VOID SetWLan() { /* 中略 */ } #endif
これだけ。
X01Tでは\Windows にあるtfwifi.exe を実行すると無線LANをトグルしてくれるのでそれを利用。
その他のレジストリはさすがはWindowsといったところか、まったく変更なしで動作。
移植性と生産性の高さはさすがWindowsですね。
りーどみーによると再配布してよさげなので
おいときますね。