2014年4月2日水曜日

SetForegroundWindowについて

ちょっとね、今日は少しイラっときてます。
今更SetForegroundWindowについて語ることになるとは・・・

http://msdn.microsoft.com/ja-jp/library/cc411039.aspx

日本語のMSDNの記述によると、
「次の条件が満たされていなければ、プロセスがフォアグラウンドウィンドウを設定することはできません。」
と書かれてて、
その下に条件がいくつか書かれてるのです。

自分はその条件が全部満たされないとこの関数は動かんのだなぁと理解しました。
(多分日本人はみんなそう理解すると思います)

ところが・・・
 http://msdn.microsoft.com/en-us/library/windows/desktop/ms633539%28v=vs.85%29.aspx
こっちには以下の様に書かれてます。
「A process can set the foreground window only if one of the following conditions is true: 」

「どれか一つがTrueだったら」って書かれてるわけですよ

おいおい・・・日本語間違ってんじゃん!

だから、SetForegroundWindowを成立させるために、
AttachThreadInput使ったり、SystemParametersInfo使ったりと、
その他本来必要の無い前提条件をクリアするためのコードが散乱するわけです。

一個でいいんだって!
みんな気をつけるように!

2014年1月17日金曜日

ajaxplorer から pydio へ

重宝している ajaxplorer だが、いつの間にか pydio という名前に変わったようだ。
iPhone 用のクライアントも pydio バージョンが出ている。

ところで、アップデートはそこそこ頻繁に行われているので、
気軽にアップデートしまくっていたのだが、
その間に、日本語のファイルやフォルダが作れなくなっていた。

まぁ、きっとどこかにlocaleあるんだろうなぁと思って検索したら、
bootstrap_conf.php のコメントに書いてあった。

conf/bootstrap_conf.phpに以下を追加すると良い。
//define("AJXP_LOCALE", "en_EN.UTF-8");
define("AJXP_LOCALE", "ja_JP.UTF-8");

コメントアウトしてるサンプル部分だが、
en_EN.UTF-8じゃなくて、
en_US.UTF-8じゃないのだろうか?
javaのプロパティと同じルールだと思うんだが・・・

2014年1月6日月曜日

OpenVPN on fonera 2.0n with iPhone

fonera 2.0nは、Atermルータの後ろに居る。
ブリッジで接続している状態だ。
うちはau光なのだが、AtermのWAN側アドレスはどうも固定のようだ。
ずっと使っていて変わったことがない。 
AtermからDMZでfonera 2.0n の IP アドレスを登録し、
外からアクセスした時にfonera 2.0nの画面が出るようにした。

次にOpenVPNの設定で、
AtermのWAN側アドレスを設定、
OpenVPNを有効にし、
新しいクライアントを登録し、iPhone用のパスフレーズを設定した。
適当にあちこちリンクをたどって、元の場所に戻ると、
設定ファイルをダウンロードできる様になっていた。
適当な場所に設定ファイルをダウンロードし、
iPhoneにはOpenVPNをインストールし、
iTunes→App→ファイル共有→OpenVPNのところに先ほどダウンロードしたファイルを解凍した中身をごそっとドラッグ&ドロップする

iPhoneからOpenVPNを立ち上げると設定ができてるので、
先ほどのパスフレーズを入れConnectする。
(自宅の場合、WiFi切っておかないとつながらない)

これで、iPhone から VNC Viewer を使って自宅マシンに接続できるようになる。