本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

追加情報と制限事項

文書番号: 402606

最終更新日: 2000/01/05


この資料は以下の製品について記述したものです。


この記事は、以前は次の ID で公開されていました: JP402606

概要

この資料は製品 (Visual Basic for MS-DOS 1.0) 付属の README.TXT を元に、最新
の情報を追加したものです。なお、この資料の以前のリリース (95/02) より追加、
修正された項目は先頭が“*”になっています。

環境 (オペレーティング システム)

  • Visual Basic for MS-DOS を利用するには、コンベンショナル メモリに最低 480KB の空き容量が必要です。480KB 以下の空き容量で Visual Basic for MS-DOS を利用した場合の動作は保証されませんので、ご注意ください。

ドライバ

  • Visual Basic for MS-DOS でマウスを使うには、Microsoft(R) MOUSE Driver Version 7.06 がインストールされている必要があります。
  • EMS メモリのページ フレームのアドレスは、必ず C0000H 番地以降に設定して ください。
  • 一部のサード パーティ製のメモリ ドライバを使用している場合、動作が不安定 になったり不正な割り込みが発生したりすることがあります。

手順

  • インストール先のディスクの空き容量が、セットアップを行うのに必要な容量に 極めて近い場合、(インストール後の空き容量が極めて少なくなる場合) 途中で セットアップが終了してしまう場合があります。インストールは余裕のある ディスクに行うようにしてください。
  • 一部のサード パーティ製の大容量ハードディスクにおいて、ディスクの容量 チェックの結果が負の値になってしまいセットアップが行えない場合があります。

ツール

  • コンパイラやユーティリティで、パス名やファイル名に 2 バイト文字を使用 しないでください。2 バイト文字を使用した場合の動作は保証されませんので、 ご注意ください。

VBDOS.EXE、FD.EXE

  • [ファイル] - [MS-DOS プロンプト] コマンドで MS-DOS に戻り、TSR (メモリ 常駐型プログラム) を起動させないでください。
  • イミディエイト ウィンドウで ON ERROR GOTO label やファイルのオープンを した場合、動作が不安定になることがあります。
  • プログラミング環境では、プロジェクトのロード時や実行時にコードの解析が 行われ、画面左下のステータス ラインに“解析中”と表示されます。このとき メモリが不足すると、“メモリが不足です”エラーが発生し、エラーを示す ダイアログ ボックスが表示されます。この時、< 了解 > ボタンを選択して も同じダイアログ ボックスが続けて表示される場合は、[ENTER] キーでは なく [SPACE] キーを押してください。
  • モジュール (ソース ファイル) の保管の方法には、テキスト形式とバイナリ 形式の 2 種類があります。プログラム中の変数は変数の情報を保持するテー ブルに記録されますが、バイナリ形式で保管した場合、コード中から変数を 削除しても一部の情報は記録されたまま残ります。この場合、一度テキスト 形式で保管すると不要な情報が削除され、メモリ消費を少なくできると 同時にソース ファイルのサイズを若干小さくすることができます。また、 プログラミング環境の [編集] - [イベント プロシージャ] コマンドで作成 したプロシージャも、それが使われていない場合でも、Visual Basic for MS-DOS が自動的に削除することはありません。アプリケーションの完成前に、 不要なプロシージャが残っていないか確認するようにしてください。
  • ヘルプ上で [CTRL] + [カーソル] キーを続けて入力していると動作が不安定に なることがあります。
  • テキスト形式でファイルを保存した場合、コンボ ボックスの Text プロパ ティの内容が Combo1 になってしまいます。なお、保存したファイルの内容 を一度エディタ等で修正することで、この現象は発生しなくなります。
*フォームデザイン環境で日本語入力の [F6] キーと [F10] キーの機能が使用できま せん。日本語入力でこれらのキーを使用する場合は Visual Basic for MS-DOS のサポ ート窓口までお問い合わせください。

BC.EXE

* 文字ラベルを前方参照しているプログラムで OPTION EXPLICIT 宣言をすると
コンパイル エラーになります。数値ラベル (行番号) を使用してください。

LINK.EXE

  • リンカ (LINK.EXE) は DOS エクステンダをサポートしており、DPMI サーバーや XMS メモリが利用可能です。お使いの環境に DPMI サーバーや XMS メモリ ドラ イバがインストールされていると、自動的に 32 ビットで高速に動作します。DPMI サーバーや XMS メモリ ドライバがインストールされていなくても、正常に動作 は可能ですが、環境変数 TMP で設定されているディレクトリにテンポラリ ファ イルを作成するため、処理速度が低下します。そのため、起動時に DPMI サーバー が見つからない場合は、警告メッセージ (Warning: running program in real mode: CPU already in protected or virtual mode) を表示した後にリアル モードで動作します。
  • 実行時にランタイム モジュールを必要とする分離型実行可能ファイルを作成 する場合、リンク時に /F[ARCALLTRANSLATION] オプションは指定しないで ください。

プログラミング

  • 仮想 86 モードを利用したドライバを利用していると、数値演算プロセッサの 演算速度が低下します。浮動小数点演算を大量に行い、演算速度が非常に重要 な場合は、このような EMS メモリ ドライバを利用しないようにすると、実行 スピードが向上します。
* フォームやコントロールの LOAD、UNLOAD に使われたメモリは UNLOAD ではなくプ ロシージャの終了時に解放される仕様になっています。そのため、プロシージャ内で LOAD、UNLOAD を何度も繰り返すと“メモリが不足です”エラーが発生することが
あります。
* モーダルなフォームからモーダルなフォームの LOAD (または SHOW) と UNLOAD を 繰り返すと“メモリが不足です”エラーが発生します。フォームをモードレスにする か、UNLOAD をせずに HIDE で表示を切り替えてください。

Caption プロパティ (メニュー)

ショートカット キーを指定したメニュー コントロールのキャプションを実行時に
変更するとメニューの表示がおかしくなります。

CIRCLE ステートメント

* CIRCLE ステートメントを実行中にエラーが発生した場合、次の CIRCLE 文でパラメ ータが省略されていると、エラー以降のパラメータが引き継がれてしまいます。パラメ ータは省略しないようにしてください。

Click イベント (メニュー)

  • メニュー タイトルまたはサブ メニューを持つメニュー項目に対する Click イベントでは直下のサブ メニューの初期化以外の操作を行わないでください。

ControlPanel プロパティ

  • SCREEN オブジェクトの ControlPanel(7) プロパティは、画面の背景に表示される文 字 (デスクトップ キャラクタ) を設定します。この値を変更するときは、必ず ASCII コードで 1 ~ 127 の範囲の値を指定してください。
* フォームを ControlPanel(3) = 0 で影をつけない設定にした場合、Style プロパティが 1 のコンボ ボックスにフォーカスを移すとフォームに影がついて
しまいます。

MSGBOX ステートメント、MSGBOX 関数

* モーダルなフォームから MSGBOX の表示を繰り返すと“メモリが不足です”
エラーが発生します。MSGBOX を呼び出すフォームはモードレスにしてください。
* ドライブ リスト ボックスやコンボ ボックスのドロップ ダウン リストの
表示中に MSGBOX を表示する場合、ドロップ ダウン リストと重なると MSGBOX
の表示が一部が消えてしまいます。

KEY ステートメント (イベント トラッピング)

[XFER] キーのトラップができません。

KeyDown および KeyUp イベント

  • キーを押したまま (オート リピートの状態) にした場合、KeyDown イベントと KeyUp イベントが交互ではなく不規則に発生してしまいます。
* コンボ ボックスで Style プロパティが 2 の場合、コンボ ボックス上で [ENTER] キーを1回押すと KeyDown イベントが2回発生してしまいます。

ON COM ステートメント

* フォームを使用する実行ファイルでは、データを受信してもキーを押すかマウスを 動かさないと COM イベントの処理ルーチンが実行されません。このような場合は、
タイマー コントロールを配置し Interval を設定するようにしてください。

PAINT ステートメント

* タイリングを繰り返し行う場合、引数の文字列に演算式を使用すると“文字列が複 雑すぎます”エラーが発生することがあります。引数にする文字列はいったん変数へ 代入してから使用してください。

PRINT メソッド

  • PRINT USING にて 2 バイト文字が正常に出力できない場合があります。この ような場合は Visual Basic for MS-DOS のサポート窓口までお問い合わせ ください。

SCREEN ステートメント

  • SCREEN ステートメントでアクティブ ページを切り替えるとパレットが初期化 されてしまいます。SCREEN ステートメントで表示ページを切り替えると最下 位行( 25 行目)のテキスト表示が消えてしまいます。
* 第 5 パラメータ noinit% に 1 を指定した場合、プログラム終了後にグラ フィック画面は消去はされませんが見えない状態になっています。再び表示す
る場合は添付のユーティリティ GRPSW.EXE を実行してください。

SetFepMode ルーチン

  • SetFepMode ルーチンを使用したプログラムをランタイム分離型で作成し実行 した場合、システムの動作が不安定になり最悪の場合ハングアップして しまいます。このような組み合わせで実行ファイルを作成する場合は Visual Basic for MS-DOS のサポート窓口までお問い合わせください。

Timer イベント

  • メニューやコントロール ボックスを開いている時には Timer イベントは 発生しません。

Width プロパティ (テキスト ボックス)

  • テキスト ボックスの Width プロパティを 4 以下に設定することは出来ません。

コンボ ボックス

* Style プロパティが 1 の場合、フォーム デザイン時にフォームを最大化して
コンボ ボックスをフォームの下方に配置すると、実行時にリストが表示されません。

テキスト ボックス

範囲を選択せずに [CTRL] + [X] キーを押すとカーソル直前の 1 文字が消えて
しまいます。
* MultiLine プロパティを True にした場合、ワード ラップがおこなわれま
す。しかし、テキストボックスの横幅いっぱいに文字を入力し、左端でスペースや
日本語を入力すると入力されている文字列の表示が消えてしまいます。このような
場合には、再度 1 文字入力することで文字列が表示されます。

メニュー コントロール

* メニューを持つフォームからメニューを持つフォームを起動し、後から起動された フォームを最小化した場合、そのフォームのコントロール メニューのコマンドが選択 できなくなります。

サンプル

  • CONSTANT.BI の KEY_DELETE の値は 127 ではなく 46 です。CONSTANT.BI を使用 する場合は KEY_DELETE を修正してください。

MOUSE ライブラリ

  • グラフィックス カーソルを使用した場合でも戻り値がキャラクタ単位になって しまいます。これは FALSE および TRUE の定数定義が行われていないのが原因 です。以下の定数定義を MOUSE.BAS に追加してください。
        CONST FALSE=0
        CONST TRUE=NOT FALSE
    

Keywords: KBBUG VBDOS KB402606
Technology: kbAudDeveloper kbVB100DOS kbVBSearch kbZNotKeyword3

inserted by FC2 system