今作っているアプリ(コミケのカタログブラウザとか、デスクトップアクセサリとか)をLinuxでも動かそう、なんて思ったのが間違いでした。
現在の開発はVisualC#2008Expressで行っているのですが、MonoなるものをLinux上に導入すると、Windows上でコンパイルしたプログラムがそのままLinuxで動く、らしい。が、実際にはOSの違いやMonoで実装されている機能を意識しないと正しく動いてくれません。
たとえば、Windowsではパスを\で区切りますが、Linuxでは/です。ファイル名を直接プログラム上に書いちゃうと動いてくれません。また、Monoでは全てのライブラリがLinux上に実装されているわけじゃないので、Monoで動くメソッドとか気にしないといけません。
さらに、実装されていてもWindowsと挙動が違う場合があります(多分、GUI関連とか多そう)。あ、当然ながらWindowsAPIを直接叩いてるプログラムもアウトです。
いや~、この縛りプレイ?(縛りプログラミング?)が思いの外厳しい。簡単なプログラムなら楽にマルチプラットフォームを実現できるのですが、凝ったアプリになると途端にうごかな~い。実際には、上記以外にも色々色々色々めんどくさいので、ちょっと諦めモード。
2009年5月17日日曜日
コミケのカタログブラウザ
何を思ったか、コミケのカタログブラウザ作ってます。元々、公式のブラウザが使いにくいと思っていたし、データの保持にSQLiteを使っていると知ったので、SQLの勉強を兼ねて手を出してみました。
SQL怖い…。私はDB関連は全くスキルがないので、進まない進まない。クオート書き忘れに気づくまで3時間くらい潰したり、文字コードの変換が出来なくて数時間悩んだり。
コミケのカタログはSQLiteのバージョン2系なのですが、C#のライブラリからSQLiteを使う場合バージョン3系じゃないといけません。また、文字コードにUTFを使うので、文字コードの変換も必要です。DBの元データもあるので、自力でInsertでもしようとしたのですが、これも無理…。
結局、sqlite.exeとsqlite3.exeのコマンドを使ってDBの変換をすることにしました。SQLiteはパブリックドメインらしいけど、このexeも同じなのかしら?これ使えないとアプリの配布は無理そうだなぁ。
しかし、画像が寂しい。
SQL怖い…。私はDB関連は全くスキルがないので、進まない進まない。クオート書き忘れに気づくまで3時間くらい潰したり、文字コードの変換が出来なくて数時間悩んだり。
コミケのカタログはSQLiteのバージョン2系なのですが、C#のライブラリからSQLiteを使う場合バージョン3系じゃないといけません。また、文字コードにUTFを使うので、文字コードの変換も必要です。DBの元データもあるので、自力でInsertでもしようとしたのですが、これも無理…。
結局、sqlite.exeとsqlite3.exeのコマンドを使ってDBの変換をすることにしました。SQLiteはパブリックドメインらしいけど、このexeも同じなのかしら?これ使えないとアプリの配布は無理そうだなぁ。
しかし、画像が寂しい。
2009年5月11日月曜日
Windows7RCをVMwareで実行
以前にもWindows7のβ版をVMwareにインストールしましたが、今回はRCです。インストール手順はβ版とほぼ同じで
- qemuでVMwareのディスクイメージ作成
- β版で使用したvmxを再利用(ファイル名だけちょこっと修正)
- Windows7RCをインストール
- VMware Toolsをインストール
- ネットワークドライバ、サウンドドライバをインストール
- WindowsUpdate実行
- AVG Anti-Virusをインストール
大まかにはこんな感じ。相変わらずAeroが使えないですが、動作が軽くなるだろうから良し。
ただ、今回はVMwareのサスペンド機能が使えなくて困った。右上の×をクリックしても~スクリプトのエラー?とかでサスペンドできない。結局、VMware Tools内のスクリプトファイルを修正することで無事機能するようになりました。VMware, VMipでググると解決方法がわかるはず。
さて、ここまではどうでもいい話。今回びっくりしたのは、音声認識周りについて。
前回はVMwareとの相性のせいか、使用するアプリのせいか不明だが、音声認識が不調だった。今回、試しに自作のアプリ(音声認識機能を搭載)を実行したところ、特に何の設定もしていないのに、一発でアプリが動作しました。「メモ帳」と喋ると、ちゃんとメモ帳が起動する…。こんな感じ。
.NETを使っているし、Vistaから音声認識エンジンが標準搭載なので、通常インストールなら納得です。しかし、VMware上で、こうもあっさりと動くとは。
2009年5月1日金曜日
firefox…
GWですよ!
firefoxのバージョンが3.0.10になりました。3.0.9でクラッシュするバグがあったようで、かなり早い更新でしたね。確かに、3.0.9にしてから調子が悪かった気がする。
でもさ、3.0.10にしたらWebの表示が出来ないページが多数。エンコードをしくじっているのか分からないけど、エラーが出て表示できなかったり、不思議な文字で埋め尽くされた表示になったり。
はい、使い物になりません。実際にはプラグインのバージョンも同時に上げているので、本体が悪いのかプラグインが悪いのか分からない。新しいプロファイルを使うと表示出来るっぽいので、プラグインが悪いのかな?
どちらにせよ、また環境を構築するのは嫌です。これで何回目なんだ。今後はchromeとIE8のコラボでいきます。(といいつつ、また再インストールして使うんだろうなぁ…)
firefoxのバージョンが3.0.10になりました。3.0.9でクラッシュするバグがあったようで、かなり早い更新でしたね。確かに、3.0.9にしてから調子が悪かった気がする。
でもさ、3.0.10にしたらWebの表示が出来ないページが多数。エンコードをしくじっているのか分からないけど、エラーが出て表示できなかったり、不思議な文字で埋め尽くされた表示になったり。
はい、使い物になりません。実際にはプラグインのバージョンも同時に上げているので、本体が悪いのかプラグインが悪いのか分からない。新しいプロファイルを使うと表示出来るっぽいので、プラグインが悪いのかな?
どちらにせよ、また環境を構築するのは嫌です。これで何回目なんだ。今後はchromeとIE8のコラボでいきます。(といいつつ、また再インストールして使うんだろうなぁ…)
登録:
投稿 (Atom)