ページ

ラベル VentctrlKicker の投稿を表示しています。 すべての投稿を表示
ラベル VentctrlKicker の投稿を表示しています。 すべての投稿を表示

2007-12-17

VentctrlKicker更新

昨日公開したVentctrlKickerですが、アクティブなアプリの名前を取得する部分にバグがありました。
修正版を W-ZERO3.org Uploaderにアップしましたので、差し替えをお願いします。  
昨日の版ではアクティブなアプリの名前をレジストリから取得していました。
INT     i               = 0;
TCHAR   szAppName[256]  = _T("")
LPTSTR  pszAppName      = szAppName;

if (S_OK == RegistryGetString(
        SN_ACTIVEAPPLICATION_ROOT   ,
        SN_ACTIVEAPPLICATION_PATH   ,
        SN_ACTIVEAPPLICATION_VALUE  ,
        szAppName,
        256)) {

    while (NULL != szAppName[i]) {
        if (0x1b == szAppName[i]) {
            pszAppName = &szAppName[i + 1];
            break;
        }
        i++;
    }
}
 
レジストリには1つ前のアプリ名と現在のアプリ名がエスケープキャラクタで区切られてセットされています。
ところがOpera等を使っている場合 開いているページのタイトルがアプリ名としてセットされてしまうため、 途中から高速化クライアントが無効になっていたようです。
 
対策としてウィンドウクラス名を使ってアクティブなアプリの判別を行うように変更してみました。
TCHAR   szClassName[256]    = _T("")
HWND    hActiveWnd          = NULL;

hActiveWnd = GetForegroundWindow();
if (hActiveWnd) {
    if (0 == GetClassName(hActiveWnd, szClassName, 256)) {
        szClassName[0] = NULL;
    }
}
 
実はこの方法にも問題があって アプリによってはウィンドウクラス名がよくわからない(というか頻繁に変わりそうな)ものもあるので、 レジストリのアプリ名による判定も残しています。
 
もしかしたら高速化クライアントと併用できないアプリを登録できるようにした方がいいのかもしれませんね。
 

2007-12-16

高速化サービス使ってみました

年末の帰省に備えて、前々から気になっていた高速化サービスを試してみました。
 
高速化クライアント(竜巻)もダウンロードしてみたのですが、PHS回線経由でないとダウンロードできないのはいただけませんね。
もしかしてダウンロードも速くなっていることを体感させてくれようとしているのでしょうか?
 
ともあれ高速化クライアントが使えるようになったところで、以前 W-ZERO3.org UploaderにアップしてたVentctrlKickerを修正してみました。
  • up0843.zip
  • up0849.zip
    (12/17追記)
    修正版をアップしました。
oriさん作のventctrlと同じフォルダに置いて実行することで、 ダイヤルアップ接続時でOperaまたは Internet Explorerがアクティブなときだけ高速化クライアントが有効になります。  
無線LAN並み...とまでは行きませんが、想像していた以上に体感速度が速くなって大満足です。
これなら、PCを持たずに帰省しても大丈夫かもしれませんね。