カエパパ日記

平凡なプログラマの備忘録

【C#】 ApplicationSettingsBaseを使ううえでの注意点

ApplicationSettingsBaseを用いて、プロパティの値を設定する場合
以下のように属性を使って、初期値を設定すること。
でないと、オブジェクトのインスタンスが生成されず、例外が発生する。

 [DefaultSettingValue("0")]

一度、user.configに値が記録されると、オブジェクトがuser.configから読みだされるため上記の初期値が無くても例外は発生しなくなる。
そのため、上記の設定を怠ると、仮にuser.configを直接編集する等して自分の開発環境で動いたとしても
他の環境に持ち出した際に、実行時エラーを引き起こし混乱の元となるので要注意。

PythonをWindowsの実行ファイル(exeファイル)に固める

 とりあえず、二通りのやり方がある
 1. py2exeを使う
 2. pyinstallerを使う

 py2exeを使うと、dllやpydといったファイルがexeとは別に吐き出され
 実行環境でもこれらのファイルを同梱することが必要になるが
 pyinstallerを使うと、実行ファイルを簡単に一つにまとめることができる。
 pyinstallerを使うには、別途Python for Windows Extensionが必要なので
 これを予めインストールしておく。
    (場所:http://sourceforge.net/projects/pywin32/files/
 pyintaller自体は、ただ展開するだけ。
 (2.0での話。1.xでは、configure.pyとか実行する必要があるっぽい)

 あとは、pyinstallerを展開したフォルダに、固めたいPythonコードを置き
 以下のコマンドを実行すればOK
 # python pyinstaller.py --onefile hogehoge.py

Eclipse/Android NDKにおけるC/C++のインクルードパスの追加

プロジェクトを右クリック→[Properties]→[C/C++ General]→[Paths and Symbols]
で、インクルードパスを追加
→Elipse側で、インクルードファイルに関わる名前解決などの手掛かりとして使用されると思われる。
 これが無いと、ビルドは通ってもコードエディタ上で該当のパスが無いかのように表示される。


Android.mkに以下のようにパスを追加。
 LOCAL_C_INCLUDES := /Boost/include/boost-1_40
→こちらは、ビルド時に実際に用いられるMakefileのパラメータ設定。
 これが無いと、当然ビルドに失敗する。