どこから始める?

ARAGOのCDにはDOS2WINどいうディレクトリにdBXL 1.5用に書かれたデモプログラムをWindowsに移行するためのサンプルプログラムが入っています。 ご覧になりましたでしょうか?

Step1

3段階のプログラムです。 最初はdBXLをARAGO for Windowsで動くようにシンタックスの違いを直しています。

Step2

次に簡単な変更をしていきます、画面の変更はパネルペインターでできるようになっています。 まず一度ご覧ください。


Step3

次はWindowsがどのように動くのかをパネルペインターで画面だけのサンプルをいろいろ作ってみてください。 実行部分はWAITを使ってなにをするところかを表示してください。 パネルペインたではオブジェクトの指定されている内容がカーソルをそのオブジェクトに持っていくだけで表示されます。時々変更してどうなるかを見てください。

次にサンプルプログラムがいろいろ入っています、二つに分かれています、一つはデモです、いろいろなのがあります、動かしてみてください。 もう一つはそれぞれのパネルオブジェクトのいろいろな使い方を見せるために作ったobjectsのでもがあります。 この中にはDEFINE FORMを使った印刷例があります。 これらもぜひご覧ください。


ではARAGO for Windowsに現在のDOSのプログラムを移行するためのアプローチに入りましょう。 あっと、その前にWindowsをお使いになっていますよね! DOSとWindowsはいろいろなところで考え方が違います。 頭を切り替えてください。 DOSではこうだから、とかDOSのとおりでなければいけないと考えているのは、意外にDOSのアプリケーションを書いている方だけではないでしょうか?

どこの現場でも、もうWindowsが使われています。 ご心配なく!

まずWindowsの環境はマルチユーザーと同じだと思ってください。 スタンドアローンのパソコンでも、Windowsは複数のアプリケーションを動かすことができます。たとえばどうもアプリケーションがおそくなるのではないかと考えないでください。 ファイルは共有されています。 ですから自分しか使わないと考えないで下さい。 SET AUTOLOCK ONです、 SET EXCLIUSIVE OFFです。

どうも遅くてしょうがないといときは、メモリーがありますか? 大量のアプリケーションを起動していませんか? 最近のファミリーパソコンがなんでも最初からプレインストールとかいいながら訳も分からないほどのソフトウェアがインストールされています。 これらをアンインストールするのでしたら、フォーマットしたほうが早いのですが、それさえできない家庭用パソコンがあります。

ファミリーパソコンをオフィスには持ち込まないでください。 購入するときはそれらのインストールされていない、本当の親切なクリーンパソコンを買いましょう。

ハードウェアを選ぶのも技術のうちです。 いくら有名だとかテレビで宣伝しているからといった基準だけはおさけください。 一つの選択する方法は、パソコンを使って長い企業ではどんな使い方をして、どんな機種を使っているかを調べてみてください。 パソコン雑誌をうのみにするのも危険です。 時々筆者の方でメーカからきた文章をうのみにする方や、メーカーから何かを提供されているからと問題点は指摘しないで良いことしか書けない方もいるようです。

それと考えている機種はどうなのか? をインターネットのサーチエンジンで探してみてください。 良い評判もあれば悪い話もあると思います、ご自分で判断してください。 もし書かれている内容が難しすぎて、待たないようがあまり良いことを書かれていないときは、少なくともあなたよりはパソコンを理解している方が悩んだ結果ですから、そのようなパソコンは避けるのが一番かと思います。

前書きが長すぎてすいません、 あまりにも日本のパソコンが動かない機種や問題のありすぎる機種が多すぎるからです。 どうしても動作がおかしいときは別のメーカの機種や、Windows NTで試してみてください。 プリンターはそれぞれのメーカのWebサイトに新しいドライバーがあります、どうも印字が変だと思ったらためしてください。 しかし決して新しいドライバーがきちんと動くとは限りません。 ご注意ください。

  さっそく実行してみましょう 
ARAGO for Windowsは@...SAY...GETについてマニュアルには記載がありませんが、そのまま動きます。 もちろんSET COLORも基本的には動きます、 しかしdBXLやQSのWINDOWはまったく概念が違いますから動きません。 まずいろいろ考えるのは大事ですが、動かしてみましょう!

RUNコマンドでバイナリーを動かしていたのはもう動きません。 Windowsではそれらのバイナリープログラムはほとんどが動かないでしょう。 WindowsではEXTERNでWindowsのDLLや、自分で作成したDLLを呼ぶことができます。 マニュアルではほとんど説明がありません。 objectsにサンプルがあります。 ご覧ください。 もしこのサンプルがわからないときは、わかる方にご相談ください。 Windowsの基本的なことですが、どこまで理解されているかによって説明がまったく違ってしまいます。

さて動かすとどうですか? 何とか動いていますか?

実行しようとしたらエラーが出たらあまり深く考えずに、とりあえずコメントを入れて直しましょう!

&&です。 面倒なところでしたらブロックごとコメントアウト! もちろんプログラムが動かないといけません。 何個所ありましたか? 思ったより少ないと思います。 それではエラーになったところをもう一度見直しましょう! どうしてエラーになったのか? ARAGO for WindowsはDOSからのシンタックスの変更は最低限に押さえています。 シンタックスが変更になったところをヘルプファイルを見て直してください。 動くようになりましたか?

すべてのエラーが直るまで、@..SAY...GETのままにしておきます。 USE WINDOWなんてのを上手に使っているプログラムが一番面倒かもしれません。 表示位置がおかしいとか、文字がはみ出るとか、とのことは気にしないでください。 あとで画面関係はすべてWindowsに移行しなければいけません。

  どうもうまくいかない

一番元になる部分を切り出して動かしましょう。 何もかも乗せて一遍にすべてを直すことは無理です。 満艦飾にするのも順番です。 もし途中から動かなくなれば、前に戻るだけです。 十分に慣れるまでは、一個所直しては次にいきましょう! まとめてあれもこれも直して、どこが違うかを調べるよりはるかに効率よくいきます。


もしプルグラムがやたらに複雑になっているときは、少しすっきりさせてください。 プログラム構造もそうですし、ファイル関係もそうです。 DOSの時代は、メモリーの制限との戦いでした、そのため一つ一つのプログラムが小さくなっているはずです。 Windowsではメモリーの制限がありません。 ファイルの数を減らしましょう。 ぱっと見て分かる数にしましょう。 ファイル名をわかりやすくしてください。

ARAGO for Windowsにはユーティリティーのメニューにファイルからの検索の機能があります。 これは指定するディレクトリの指定するファイルタイプのファイルすべてから一致する文字列を探します。

見つかるとARAGOの画面の下にあるoutputウィンドウに見つかったファイル名、ディレクトリ名を表示していきます。 いちいちそれらのファイルをオープンする必要はありません。 単純に見たいファイルをoutputウィンドウの中でダブルクリックしてください。 ダブルクリックするとmodi commのエディターがオープンされます。 ここでもDOSではありませんから、いくつでもファイルをオープンできます。

Windows 95

システムで使えるメモリーが128Kというの制限があります。 NTではこの制限がありません。 実際の開発では安定しているWindows NTをお勧めします。 Windows 98になるとこの制限がなくなると思います。

Windows NT

NTで作業されている方は気にせず、ファイルをまとめましょう。 グループ化です、何でも一つにするわけではありません。 先にいくのを忘れたのですが、ディレクトリの中のdbfのタイムスタンプを見てください。 どう見ても長いこと更新されていないdbfがあったりします。 要らないdbf、要らないモジュールをはっきりさせ、すべて切り捨ててください。

  モジュールレベルで問題が出るところ。

印刷ルーチン、 DEFINE FORMに書き換えます。 一人でやるときは、WAITで印刷プログラムとでも表示して、後に回しましょう。

BROWSEをいきなり使っているところ、これはWindowsではBROWSEをそのまま使うと、BROWSEを表示して、そのままプログラムが先にいってしまいます。 パネルオブジェクトのDEFINE BROWSEに書き換えます。

REPORT FORMやLABEL FORMで印刷しているところ、 DEFINE FORMに変更します。

CALLやCCALLを使っているところ、WindowsのAPIを調べて仕様を変更するか、他の方法を考えてください。 時々フロッピーを入れてください。 といってRUNでFORMAT.EXEを起動するようなプログラムがありますが、これを無理して直すより考え方を変えてはいかがですか?

罫線を画面に引くためのツールをお使いでしたら、Windowsではもう要りません、無視してください。


  DOSからの移行のために次のコマンドがあります。

何もしなくてもプロンプトウィンドウにあたかもDOSの画面のようにdBXLのプログラムが動くとはずです。

SET PANEL TO

SET PANEL ON

であたかもDEFINE PANELですべてのプログラムが書かれているようにとりあえずはパネル上に表示することができます。

少し使って遊んでみてください。


  Windows プログラミング 注意1

もう一つ大事なことがあります。 DOSの画面は元々は紙に出力するのを真似してできています。

ですからスクロールしていきます。 これをあたかも一枚の画面をして扱おうとしたのが画面制御コードです。 ですからどんどん一番下の行に書いていくと、かってにスクロールしていきました。 印刷用紙と同じです。 Windowsは一枚の紙です。 スクロールするところがありません。 紙のどこに書くかを指定しておしまいです。

DOSのときに位置を指定するには、文字が単位でした。 Windowsはピクセル、ドットが単位です。画面設定が640X480とか1024X800とかいろいろあります。 もしこの1024X800で画面を設計すると、640X480の画面の機種では、表示されますが、たて横のスクロールバーが出ます。 この辺は800X640を標準にするしかないと思います。

またWindowsでは指定したサイズのウィンドウでも最大化を選ぶと、大きくなります。 その辺は十分考慮してください。

  Windows プログラミング 注意2

もう一つ困ったことがあります。 DOSのときは、訳の分からんことをユーザーがするにしても、DOSのコマンドを知らなければ何もできませんでした。 Windowsはクリックするだけでいろいろなことができます。 使いやすいということはシステム設計者にすると、両刃の剣です。 大事なデータはそう簡単に壊れないような方法を考えてください。 ネットワークでサーバーにデータを置くのも一つの方法です。

一番大事なことはやはり使い方をきっちり教育することだと思います。 その辺の予算もしっかり計算してください。それでも退職時にデータを持ち出したり、ハードディスクをフォーマットしたりする事件が起きています。 これもセキュリティ問題として考えてください。

何やら面倒くさそうな話ばかりのようですが、実際にやられるとそれほどではないでしょう。

さて動いたプログラムをすべて終わるまで待てるのか? それともすぐ使い出すのかが問題になると思います。 個別に動くプログラムでしたら、 @...SAYで選択する部分をすべてプッシュボタンで置き換えます。

いくつかをパネルペインターで作ってみてください。

1. 真ん中に大きくプッシュボタンを上下に並べておく。 ...うーん センスが!

2. 右か左か上にきれいに並べておく、 あいたところに説明を書いておく。 ついでに時間、日付、作業者の名前。 少し読みれるようになりますね。

3. ちょっとビットマップを貼り付けませんか?

4. 壁紙を張ることもできます!

5. プッシュボタンをビットマップにすることもできます。

6. プッシュボタンを使ってClearオプションを指定すると、文字しか表示されません。

7. 上のいろいろなものを組み合わせると、中身はほとんどDOSのまま、見たところはとてもきれいなWindows アプリケーション。

動かすことが大事です、あまりのも些細なことでとまると先に進めません。

 ひとこと

今時代は音楽でさえビジュアル派です。 しかし画面を凝りだすと、終わりがありません。 プログラマーでデザインのセンスのある方はなかなか少ないと思います。 パネルペインターは誰でも簡単に使えます。 デザインだけでも気のきいいた方の参加を! 天は二物をくれません、単にお荷物をくれるだけです。 がんばってください! Ciao!

Dos Win 2