金曜日, 11月 18, 2005

日記-2005-11-19

今日はネタがないので個人的な日記を書かせてもらいます。

昨日「phoebe」という統合開発環境作成ツールをダウンロード&インストした。

ダウンロードサイト

このソフトウエアは無償のコンパイラとうまく連携して統合開発環境(IDE)を実現するものです。
早速僕も「Visual C++2003 toolkit」をMicrosoft社のサイトからダウンロードして、インストールした。
そしてPhoebeのホームページに書かれているようにうまく適合させて、早速コードを記述した。
MS VisualC++はCもC++もコンパイルできるようなので「untitle.cpp」と「2.c」を作った。
もちろん前者はC++言語で後者はC言語である... と書くとまるで僕がC,C++やWin32に堪能なように聞こえるがもちろんそうではないことを断っておきます。

さて、両方ともこれといったエラーは指摘されず、うまくコンパイルされた。
まあ唯一文句を言うとすればVC++2003のToolkitなので実行にMicrosoft.NET1.1が必要なことであろうか。
さて実行してみると、(どちらも簡単なDOSプログラムです。)Cで作った分はWindowsシェル、つまりいつもの画面でダブルクリックするだけで実行できるのですが、なんとC++で作った分は最後のメッセージが出る瞬間にウインドウが閉じる、つまりPAUSEかEXITが実行されてしまうのです。
困ったなと思いました。なぜかというとPhoebeのIDEじょうで「実行」した際にはうまく実行されたのです。
しかし、よく考えてみると僕の作ったプログラムは簡単なDOSプログラム-Windows.hを呼び出していない、のでPhoebeで実行するときShellExcute?だったっけ、でDOS窓起動して、アドレスで(実際にする際は「cd」とDOS窓に入力-カレントドライブの意、)で実行ファイルを実際に起動しているはずです。
つまり、自分で「コマンド プロンプト」(「すべてのプログラム-アクセサリ」にある。XP Proで実行)に cd コマンドを使い実行すればうまく実行されるのではないか、と思いました。
なぜかというと一度 cmd.exe-command.com を起動して、そのDOS窓をShellの終了命令を全く記述していないプログラムから終了できるわけがないからです。
そして案の定DOS窓から自分で実行するとうまく実行されました。
その後「メモ帳」で参照すると

<<僕は右クリックからメモ帳で参照できるよう「SendTo」フォルダにメモ帳(notepad.exe)のショートカットを配置し、「送る」で参照できるようにしています。「隠しファイル・フォルダの表示」と「オペレーティングシステムで保護されたファイル・フォルダの表示」を「コントロールパネル-フォルダオプション」で設定すると
C:\Document and Settings\あなたのユーザー名\SendTo
が表示されます。>>

「This program cannot be run in DOS mode」の文字列が見当たりませんでした。
しかしさすがにMicrosoft.NETの実装されたMS-DOSが存在するわけがないので、ここで「MS-DOS用のプログラムだぁっ!!」と喜びたいけれどもそうは行きません。
まあしゃあないからバッチファイルを作成してみましたがなんとそれでもWinからダブルクリックしたときと同じです。この実行ファイルを実行するコマンドのあとにdirを記述してみたり実行ファイルに無駄な画面出力を記述してみたけれど無理でした。
どうにかなりませんかねえ?Windows.h呼び出してGUIアプリにすべきですか?

0 件のコメント: