2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

【QBASIC互換!?】FreeBasic【GPL】 2

1 :デフォルトの名無しさん:2016/12/24(土) 12:22:27.77 ID:CVYSyiU+.net
FreeBasic
ttp://www.freebasic.net/

建てたいって人がいたので勝手に建てた
後はご自由にどうぞ
俺は知らん
過去スレ
http://echo.2ch.net/test/read.cgi/tech/1139379786/

186 :デフォルトの名無しさん:2017/09/27(水) 19:31:08.07 ID:dFhB3tDJ.net
http://www.hi-ho.ne.jp/makoto_watanabe/FbEdit/index.html
「新規プロジェクト」内「テンプレート」に関する情報
Addin の場合
作成された *.Bas ファイルに
「#include "..\..\Inc\Addins.bi"」行がある。これは、
C:\FbEdit\Inc\Addins.bi
を示すらしい(ディスク内にこのファイル以外の同名のファイルが存在しない)。
D:\bas\Projects\ExeType1\ExeType1.bas
なんて別ドライブにて作業している場合には、
「C:\FbEdit\Inc\*.*」を「D:\bas\Inc\*.*」にコピーする必要がある。
作成された *.Bas ファイルに関して、「#include once "windows.bi"」行の後に
「#Include Once "win/commctrl.bi"」を書き加える必要がある。
これで、内容を修正していない状態でのコンパイルは通る。

Console の場合。
そのままでコンパイルは通るが、マルチモジュールにと複数のファイルを登録したら *.O がないとしてコンパイルできなかった。

Tabstrip の場合。
「declare function DlgProc(byval hWnd as HWND,byval uMsg as UINT,byval wParam as WPARAM,byval lParam as LPARAM) as integer」行が
コンパイルエラーで動かない。Declare文に合わせるか Function文に合わせるか、で後者を選択した。
つまり、前述Declear文をコメント行に変更して、
「declare Function DlgProc(byval hDlg as HWND,byval uMsg as UINT,byval wParam as WPARAM,byval lParam as LPARAM) as bool」文を追加した。

MS用語で、コールバック関数、以前使っていた用語では、ユーザー定義ルーチン、なので、
参照側、システム(スーパーバイザー)の定義がどうなっているのかをみないと、正確な内容はわからない。

現在チルドレン(GW?QB?用語)で参照ルーチンを作成できないか、あるいは、DLLファイル化するか、で迷っているところ。
多分、「ユーザー側(プログラム)で、連続した領域を要求したにもかかわらず、システムが確保できなくて、無理に実行して、ハングした」と思われる障害で苦しんでます。
https://mevius.2ch.net/test/read.cgi/tech/1475897582/856-897

187 :デフォルトの名無しさん:2017/09/30(土) 06:57:11.47 ID:0ZNFHa8Z.net
360互換機を使っていたころ、コマンド行の解釈は専用の内部タスクがあった。
表に出ることはないタスクなので、名称は覚えていない。システムを示す、コマンドの表題の末尾に「$」が記載されていたことを覚えている。

>>186 に書いた通り、領域の確保ができない場合に、分割する必要がある。
「自分で考えるよりも、誰かがやった歴史通りにまねをできるように」と学ぶのが、義務教育の社会科の中の一分野「歴史」。
分割するのに、360の歴史に従って、コマンドラインの解釈を分割することにした。
FBのコマンドラインに準じて、Fun SwitchFileRead2()系統を作成した(前スレ参照)が、これらは全部廃棄。
360に準じて作成し、今回QBに移植したFun SwitchFileRead()系統を復活させた。
前者はコマンドラインを順次解釈しているに対して、後者は前置詞・語・後置詞、修飾語の区切りが規定されているので、汎用化しやすい。
前者は、とうしてもスイッチの解釈が各ユーザー(プログラム)専用になってしまう。
後者は汎用性があるので、無意味なスイッチでも通過してしまうという欠点を持つが、主プログラムで使わないスイッチを読み飛ばしてしまうことで対応可能。

別タスクにして、チルドレン(GW(QBの前のバージョン)用語)で芋づる起動することを前提の Shell 命令
http://makoto-watanabe.main.jp/freebasic/PgShell.html
を使うことになる。タスク間の連絡を何にするか、迷ったところで、ハンチ等システムを復活させることにした。

249 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★