趣味のプログラム工房

2012年09月

Android端末でマルチユーザ化!

Androidマルチユーザ化して家族で使えないかということで、
SwitchMe Root Profile Manager
というソフトを導入しました。


これは、正確にはAndroidマルチユーザ環境にするソフトではなく、初期環境をもうひとつ構築することで、1つの端末に2つのOSが入った状態とすることで擬似的にマルチユーザ環境を実現しています。

つまり、ユーザA用のAndroidの環境とユーザBの環境をデュアルブートして使うわけですね。

設定が完全に分かれていますので、ヘタなマルチユーザ環境より使えると思います。

無料版では、2ユーザまでユーザごとのパスワード設定もなしですが、有料版になると、パスワードの設定も出来て、ユーザも無制限です。

ただ、このソフト、ユーザの切り替えの際、必ず再起動が必要です。
(ユーザの切り替え=OSの切り替えのため)

その時間が掛かることさえ我慢したらすごく便利なソフトです。
2012年09月03日


IIS7.5でPerlを実行【Windows2008R2】

大人の事情で、IIS+Perlの環境でプログラムを動かすことになりました。
そのための検証を行ったのですが、意外にメンドクサイ。


IISのインストールは、ISAPI拡張だけあればよさそう。
CGIはおそらく不要です。(必要ならインストールして)


続いて、ActivePerlのインストールですが、64bitOSであっても32bit版のほうがよさそうです。


インストールが完了したら、あとはIISPerlのマッピング。

『ハンドラーマッピング』の設定から、スクリプトマップの追加を行います。
そこで拡張子「*.cgi」にたいし、「perlis.dll」(デフォルトのままだと、C:\perl\binの下にある)を指定します。
ここで、perl.exeは指定しないこと!

マッピングが追加できたら、念のため、「機能のアクセス許可の編集」を選び、実行にチャックが入っていることを確認。


これで、Perlが使えるようなっているはずです。

ただし、注意点として、どうもIISが出力するヘッダがおかしいらしく、perlスクリプトに手を入れる必要があります。

具体的にはヘッダの出力前に、下記の文字列を返す必要があります。何故か。
print "HTTP/1.1 200 OK\n";


この修正が面倒な場合、マッピングとして「perl.exe」を使う方法もありますが、こちらの場合、スクリプト内で呼んでいるライブラリやデータファイルなどのパスを絶対パスで書く必要あります。
おそらく、ヘッダ出力の書き換えより影響範囲が広いと思われるため、私としては、perlis.dllを使うのがお勧め。

あと、perlEx30.dllを使う方法もありますが、こちらも、パスがうまく通らないっぽいです。
2012年09月14日