Windows:
FreeBASIC の Windows 関連の質問
Windows では、どの IDE が使えますか?
現在、FBのために3つのフル機能 IDE が開発されています:
FBIde∞ (これは更新されていないので、これに同梱されている、古いバージョンの FBC を使わないように注意して下さい。)、
FbEdit∞ 、および
WinFBE Editor∞ です。
これらの IDE を動作させるには、最低限の設定(コンパイラへのパス指定)が必要です。
WinFBE エディタ(WinFBE_Suite)には、最新の FBコンパイラがパッケージされています。これはオールインワンのソリューションです。
渡辺 注1:5 ちゃんねるのレポートによると、WinFBE は、日本語を使えるようにするには sjis版の
scintilla に差し替える必要があるようです。
渡辺 注2:
FreeBasic IDE-poseidonFB も高機能で注目です。
有償の "汎用" IDE を、FreeBASIC と共に使用できますが、大規模なセットアップを必要とするかもしれません。
これらは、統一されたユーザー・インタフェースを提供するので、マルチ言語プログラミングに、便利です。
WinFBE、FBIde、FbEdit のインストール手順については、下記をご覧ください:
-
Windows のための IDE インストール案内∞
最初に戻る
描画アプリケーションで、コンソール / 'DOS'画面 を取り除いてもよいですか?
はい。
プログラムをコンパイルするときに、描画のための正しいコマンドを FreeBASIC に与えなければなりません。
-
コマンド・プロンプトからコンパイルするなら、"fbc myprg.bas -s gui" のように、単に "-s gui" を後ろに加えます。
-
特定の IDE でコンパイルするなら、「コンパイラ・デフォルト」を指定しなければなりません。
-
WinFBE では、"Options-> Build Configurations" で、選択したビルドに "-s gui"(引用符無し)を追加してください。
-
FbEdit では、ツールバーの右側の、目標ドロップダウン・リストで、Windows GUIを選択します。
最初に戻る
私の GUI プログラムは、実行しても何もしません。/ プログラムはコンパイルされますが、リンカで、許可が拒否されたエラーになります。
この問題は、上記の質問と関連しているかもしれません。
プログラムは、
"-s gui" でコンパイルされました。プログラムは、PRINT しようとしますが、実行画面を使えないので、固まります。
PRINT 命令が、最初のウインドウが登録され、開けられる前に、発行されると、画面やタスクバーに、何も表示されないでしょう。
実行中のプログラムは、タスクマネージャのプロセスタブで、見ることができるだけです。そして、プログラム終了も、タスクマネージャで行うことになります。
プロセスを終了する前に、修正コンパイルしようとすると、コンパイラが、まだ稼働している .exe を変更しようとするので、"Permission denied (許可は拒まれました)" エラーになります。
Windows GUI では、プログラムは、実行画面のコマンドを使いません。
MessageBox か、ログ・ファイルへの出力を使って、エラー・メッセージをユーザに発行してください。
デバッグのために使う実行画面への PRINT は、最終版としてコンパイルされないことに、注意してください。
最初に戻る
デバッグは、どうするの?
FreeBASIC は、GNU GDB と互換性があるどんなデバッガも使用できます。
Insight Win32 デバッガは、GDB のためのユーザ・フレンドリーなラッパーです。
- Insight は、Dev-C++∞ から入手できます。
-
ファイルを、Insight.tar.bz2 に名前変更します。そして、空のフォルダーに解凍します。
-
あなたのプログラムを、-g スイッチでコンパイルします。
- Run <Your_Insight_Dir>\bin\usr\bin\Insight.exe
-
あなたのプログラムを Insight にロードするために File>Open します。
-
そこから、見たり、ブレークポイントを設定したり、ステップしたり、メモリとレジスタを調べたり、できます。
Insight のヘルプを確認して下さい。
最初に戻る
なぜ、Windows は、OUT や INP を使うコードの実行を拒否しますか?
Windows は、ハードウェア・ポートにアクセスするために、ドライバーをインストールする必要があります。
INP と OUT を使う FB-Win32 プログラムは、セッションのために一時的にインストールする、内蔵のドライバーを含んでいます。
Windows では、ドライバー・インストールを実行できるのは、管理者権限のユーザだけです。
これは、通常、あなたが管理者権限なしでウインドウのセッションを実行するなら、あなたは、各セッションで、プログラムを最初に実行するときに、ウインドウズのコマンドライン・コマンド RUNAS を使わなければならないことを、意味します。こうすると、Windows は、ドライバーをインストールすることを許可します。
参考:一時的にほかのユーザー権限でプログラムを実行する方法(runasコマンドを利用する方法)
http://www.atmarkit.co.jp/fwin2k/win2ktips/758runascmd/runascmd.html
この振舞いが許容できないなら、
PortIO32∞ として、外部ライブラリを使用できます。
PortIO32∞ は、永久的なポート・ドライバーをインストールします。
最初に戻る
私は、'Cannot start blah.exe because xxxx.dll was not found.' などのエラーになります。何が必要ですか?
あなたは、第三者ライブラリを使ってプログラムを動かそうとしています。この第三者ライブラリは、あなたのシステムにインストールされていない dll にあります。
FreeBASIC は、多くの第三者ライブラリのために、ヘッダーとラッパーが、コードに必要になります。しかし、FreeBASIC には、実際のランタイム dll ファイルが含まれていません。
あなたは、それらのホームページから、ダウンロードして、インストールしなければなりません。
the Links thread in the Libraries subforum∞ の中で、提供されているライブラリの、ホームページの URL を見つけて下さい。
あなたは、ライブラリの Win32 に、バイナリを必要とします。
ライブラリでプログラムを開発したいなら、あなたは説明文書も必要となります。
コンパイル済みコードをリリースするとき、それを実行するために必要な、第三者 dll を提供することは、良いエチケットです。
最初に戻る
FreeBASIC は、Windows Vista、Windows 7 で動いていますか?
はい。Windows Vista、Windows 7 (32ビット) で、動いています。
最初に戻る
どこで Windows GUI プログラミングの参考資料を見つけることができますか?
最初に戻る
FB のための Windows GUI コード・ビルダーはありますか?
はい、Visual Basic流に、ウインドウ・デザイナーから、ウィンドウズ API コードを生成する、第三者開発が、いくつかあります:
WinFBEエディタ(オープンソース)は、Visual Basicに似た完全ビジュアルデザイナです。
Jerry Fielden' Ezeegui∞ (freeware) は、コードをビルドするのに、「グラフィカルな」テキスト・モード・インタフェースを使います。
mrhx Software's VISG∞ (GPL) は、より古典的なユーザー・インタフェースです。
資源コンパイラ用のスクリプトを生成する、グラフィカルな資源エディタは、あまり役に立ちません。
GoRC と互換性のあるスクリプトを生成する任意のエディタは、利用できます。
FbEdit∞ にも、含まれています。
グラフィカルな資源エディタは、ダイアログやメニューを設計する上では、大いに役に立ちます。しかし、
ダイアログやメニューを動かすための、ウインドウ手続きを記述する部分は、やはり、あなたの仕事です。
最初に戻る
参照: