Visual C++ 2005 Express Edition(3)

Visual C++ 2005 Express Edition では新規プロジェクトを作成すると
最初から文字セットにUnicode文字セットを使う設定になっている。
でも、僕の過去に書いたコードの多くは
Unicode文字セットをしっかりと意識したものにはなっていないし
Windows9Xで動いて欲しいということもあるから
設定を切り替えて今まで同様マルチバイト文字セットを使うことした。

とはいえ Unicode文字セットをしっかりと意識していないものの
そのうち移行していこうとは思っているから
プログラムの最初の方には

_tsetlocale( LC_ALL, _T("japanese") );
と書いてある。
これ、悪い心がけじゃないと思うんだけど
ライブラリのバグがあるらしく

cout << "あいうえお" << endl;
で何も表示されない。

…仕方がないので _tsetlocale() をコメントアウト。

で、それで済んだかと思ったら、今度は

ofstream file;
file.open("あいうえお", ios::binary);
file.close();
とやると、できあがるファイルの名前が文字化け。

解決法は…

_tsetlocale( LC_ALL, _T("japanese") );
と書けってか。

…ははは。

…。

ふざけるなーーー!!

そろそろ完全にUNICODEなんだろうか。 つか、C#とか?
あぁ、でも、今、そーいう気分じゃないから .net 2003 インストールかなぁ…。


参考ページ:
wcoutのlocale - MSDNフォーラム
Pasture 内の Visual Studio 2005 移行時の注意
Develop | - | -

本〜を売〜るなら。

新生活に向けて部屋を片付ける。

漫画を売り払おうと思った。

どれを売ろうかと読み始めたら
ついついハマって…というお約束な展開に。

いや、でも、それで、漫画読んで泣くことないじゃんかねぇ。


手放すどころか、欠けてる巻集めたくなった。

まぁ、そういう本たちは本たちとして
売ってもいいかというものもそれなりに。
いや、けして作品が悪いというわけじゃないんだ。
多分、僕の感性が変わったんだ。
そういうことなんで、その、ごめんなさい。

結構な数なので、古本屋に持っていくのは大変。

そこでイーブックオフ
ネットで申し込むと取りに来てくれて
後日お金なりポイントなりもらえちゃう。

この国はどんどん引きこもりにやさしくなるのですね。

得たポイントで名作の欠けてる巻、補充しよ。
Gossip | - | trackbacks (0)

Visual C++ 2005 Express Edition(2)

本格的に使うにあたってもういくらか準備。

SDL, SDL_mixer のビルドにおいて afxres.h が無いと言われた。
C:\Program Files\Microsoft Platform SDK\Include\mfc
(Platform SDK をインストールした場所)
をインクルードファイルのディレクトリに追加して解決。

zlib のビルドにおいて ml.exe(MASM) が無いといわれたので
masm32.com から調達。
(ml.exe は Visual Studio 2005 Professional にはついているそうだ)

オフライン版のMSDNライブラリはないからオンラインで。
(F1で起動するやつはいわゆる Windows API なんかの情報がでないぽくて困る)
Develop | - | trackbacks (0)

JAVAでツールづくり(4)

JAVAでつくったアプリを普段自分が使うため手軽に起動するにはどうしたらいいか。

JAVAでツールづくり(2) にも書いたようにバッチファイルを書けばいい。

Application というアプリなら

「Application.bat」でもつくって

start java Application
と書く。

つくったのがSwingなんかを使ったGUIアプリケーションで
実行時にコマンドプロンプトが表示されて欲しくない場合は

start javaw Application
とする。

…これでOKと思いきや、うちだと(どこでもそうだと思う)バッチファイル起動時にほんの一瞬コマンドプロンプトが表示されてうっとうしい。

そこで、WSHを使う。

「Apprication.js」でもつくって

var path = "javaw Apprication";
var WshShell = new ActiveXObject("WScript.Shell");
WshShell.Exec(path);
と書く。

もちろん実行用のexeつくってもいいんだけど
自分用ならばこっちのが断然手軽。
Develop | - | trackbacks (0)

さよなら絶望先生 第三集

買った。
↑一度アマゾンリンク貼ってみたかったので貼ってみた。

一般的で無い人が読む漫画だと思うけど
そんな人たちの中での一般的な楽しみ方は、多分
話の中に出てくるあれこれのネタモトに思い当たってニヤリ
というものだと思う。
ネタモトがネタモトだし、ひねくれた使い方だしで…読む人を選ぶ。

で、そのネタは背景だとかあちこちにちりばめられている。
(このネタモトなんだ? 知りたい。 ってひとには ゆとりWeb がオススメ)

なのだけど、僕が思うに、この作品の巧妙なところは
作者自身の人生をあちこちで小出しにしてるところ。

いつの間にか、久米田康治を読み解いていく感じに。

かってに改蔵で出てきたちょっとしたフレーズ
(ビリジアンがムラになるだかなんだか)
に作者の過去が隠されてたってのを知って
なんてスルメのような、と感じた次第。

これは、ただのオタクをクメタオタクにする作品だったのか。

単行本が凝った作りでお得感あるので作品が好きなら買うべきだと思う。
Gossip | - | trackbacks (0)

Visual C++ 2005 Express Edition

Visual C++ 2005 Express Edition
サブで使っているノートにインストールしてみた。

言ってみれば無料で使えるVC。
使ってみれば普通にVC。
こんなのがタダで配られるなんて…。

普段 Visual Studio .NET 2003 を使っているが
それとの違いが分からない。
むしろ2005ってことで機能増えたかも?

あ、Windows API 直接たたいてのアプリ作りだとか
簡単なゲームプログラミングぐらいしかしてない人間の感想です。

というか、違いが分からないあたり
相当 Visual Studio を使いこなせてないことが自分で分かる。

とりあえず、マクロ使えないのだけ不便に思った。

「Visual C++」ってことだからC++しか使わない人には
「Visual Studio」よりもインストールが早く終わっていい。

「Platform SDK」「DirectX SDK」「Boost」もインストール。
軽く動作確認。

問題なく開発できそう。


参考ページ:

Visual Studio 2005エディション比較
Visual C++ 2005 Express Edition と Microsoft Platform SDK を一緒に使う
Boost C++ Library を VisualC++.net 2005 Express Edition にインストールする方法
Develop | - | trackbacks (0)

JAVAでツールづくり(3)

早速JAVAで自分用の実用的なアプリでもつくろう。

欲しいソフトっていうと、株がらみのソフトだなぁ。
監視銘柄の株価を一覧表示するアプリを作ることにする。
監視銘柄リストはファイルから読み込み
株価はYahoo!ファイナンスあたりから引っ張ってくる。

JAVAにもIDE(eclipse)にも不慣れなので手間取るが
eclipse の機能やライブラリの充実っぷりに助けられる。

まず、ネットワークがらみがすごく楽。
ネットワーク越しであることも忘れるほど。

そして、GUIライブラリのswingがいい。
C++でWindowsAPIでゴリゴリやってたのでなんでも楽に感じそうだけど
使い勝手もいいし、機能も満足できそう。

監視銘柄リストのファイルはどういった形式にしよう…。
せっかくだからXMLに手を出してみることにする。
これまた操作用ライブラリが標準でついてるってのがうれしい。

とりあえずできあがり。

javatrade00
メモを編集できるようにしたり、他の情報も出るようにしたいな。


参考サイト:

bran1229のホームページです。
 …Javaで作った株価チャートアプリが公開されている
  ソースを参考にした

株で貯金を増やしちゃOH!! 〜目標10000万〜
 …VBAでYahoo!ファイナンスから株価を引っ張ってくる方法が載っている

Javaで実現するDOM/SAXプログラミング
 …DOMでのXML操作を参考にした
Develop | - | trackbacks (0)

JAVAでツールづくり(2)

JAVAで組んだアプリの配布について。

とにかく、手間取らずに使える方がいい。

個人的にはインストーラーは好きではない。
アーカイブを解凍して即実行というのが好みだ。

…どうもまとめる気が起きないので以下に適当なまとめとリンク。
あちこちで語られていることだし。
気が向いたら直す。

■まとめ

やっぱりexeにコンパイルするのが一番よさそう。
しかし、現在それがまともにできるのは市販のツールしかない。
GCJに期待。
起動用のexe、JREをつけて配布するのが現実的とみた。


■リンク

・JAVAアプリはexeファイルではない

 ⇒起動用のバッチファイルをつくる
  ×バッチファイルで起動するアプリは一般的じゃない
http://ccs.cla.kobe-u.ac.jp/98/sae/WWW/no6.html

 ⇒起動用のexeファイルをつくる
  JavaアプリケーションをWinアプリケーションから実行

exe4j


 ⇒exeを作成できるJAVAコンパイラを使う
  JET

  GCJ
Mingw GCJ + SWTで高速Javaプログラミング


gcjって使ってる人います?


Introduction to GCJ (Fedora Core Expert, July 2005)


 ⇒Executable Jar File
Viva! Java Open Source.Tips

nDiki: Java - 久しぶりに build.xml を書く (2005-11-14)

Javaアプリケーションを実行形式で配布するには


・JREが入っていない、あるいはバージョンが古い場合が多々ある

 ⇒インストールしてもらう
  ×手間

 ⇒JREも一緒に配布する
  ○JREのバージョンあれこれ心配せずに済む
  ×容量が大きい(ブロードバンドが普及してるし平気か)

Java Web Start

 …アプリ配布技術らしいのだがよくわからない
Develop | - | trackbacks (0)

JAVAでツールづくり

もっぱらC++使ってプログラム組んでいるのだけど
C++だと

・ちょっとしたアプリ作るにも気合入れなきゃいけない
・込み入ったGUIのアプリ作るのが面倒

という問題が。

いや、どっちもC++が悪いわけではないし、策はあるし
なんだ、どっちかというと単に僕が悪い。

…。

あー、なんというか、とにかく、JAVAでツールつくるのってどうなのかなって。

思うにJAVAは…

・適当に組めそうだし
・枯れてる感じするし
・大いに普及してるし
・しばらく安泰そうだし
・資料もたくさんありそうだし
・IDEもEclipseとかあるし
・マルチプラットフォームだし
・ライブラリ充実してそうだし
・GUIのアプリ組むにも
 小ぎれい(設計が)そうで
 勉強になりそうなSwingがついてるし

こんなんが使いこなせたらいいこと尽くめじゃん。

でも、僕が作りたいような
ローカルで実行するツールだのをつくるには
まずそうなところが何点か。

・アプリの配布が手軽にできない
・アプリの起動が遅い
・アプリの動作がもっさりしてる

どうにかならないのかなぁ?

そこら辺調べつつ、平行して適当なアプリでも作ってみることにする。
Develop | - | trackbacks (0)

Direct3D で 2D ゲーム

Direct3D を今頃はじめる。

別に3Dゲームが作りたいわけではなくて
2Dゲームの派手な演出をするのに
ハードウェアの恩恵にあずかりたいという事で。

やりたいのは以下のような描画

合成:
 ・通常合成
  ・ソース画像のRGB値調整
  ・ソース画像のアルファチャンネル適用
  ・不透明度指定
 ・加算合成
  ・不透明度指定
 ・減算合成

変形:
 ・拡大縮小変形
  ・バイリニアフィルタリングありなし
  ・縦横別々に倍率指定したい
 ・回転変形
  ・拡大縮小と組み合わせもあり

さてさて、はじめての Direct3D
なにやら難しそうで
覚えること多そうで
経験的が必要とされるところもありそうで
(全部ただの先入観)
どう手をつけたらいいのやら…。
学び方に悩み時間を浪費する。
本屋であれこれ本見たり。
個人のwebページをだらだら見たり。
これ1つやればOKというものに絞りたいんだよ…。
どれも今ひとつに感じる…。

…て、あー、なにやってんだか。

こういうときは開発元のドキュメントにあたるのが基本じゃないか。
DirectX 9.0 SDK Update (October 2004) 日本語ドキュメント
をダウンロード。 チュートリアルを読み進める。

それから
DirectX 9.0 SDK をインストールすると使えるようになる
「DirectX 9 C++ AppWizard」
でプロジェクトを作成してみる。
ウィザード使ったのはじめてなんだが
実用に耐える(ように見える)雛形が吐き出されて感激。
こいつを参考にしよう。

チュートリアル読んだりしていると
2D描画だけならば、なんか、ここは無駄なんじゃないの?
とか
ここのコードって、どのマシンでも動くの?
とか
細々したところが気になって、他の情報あさりたくなるが
全体ろくに分かってないのに調べたって、結局無駄になるんだから先進めー。
忘れんな、俺!

DirectX つーか、自分のコントロールに手こずっているというだけの話じゃんか…。

はやくバリバリ描画したーい。
Develop | - | trackbacks (0)