プログラムを書こう!

実務や自作アプリ開発で習得した役に立つソフトウェア技術情報を発信するブログ

VB6で条件付きコンパイルの方法

この記事は2018年08月30日に投稿しました。

f:id:paveway:20190914064630j:plain

目次

  1. はじめに
  2. 条件付きコンパイルの方法
    2-1. 条件付きコンパイル引数の設定
    2-2. コード側の記述
  3. おわりに

かんたんプログラミングVisual Basic6 基礎編

かんたんプログラミングVisual Basic6 基礎編

1. はじめに

こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。

今回は業務で使用しているVB6の話です。
VB6で条件付きコンパイルする方法についてです。

目次へ

2. 条件付きコンパイルの方法

VB6で条件付きコンパイルするには、

  • 条件付きコンパイル引数の設定
  • コード側の記述

が必要となります。

目次へ

2-1. 条件付きコンパイル引数の設定

まず条件付きコンパイル引数の設定です。
この引数の設定により、コンパイルされる処理を切り替えます。

  1. プロジェクトのプロパティを開きます。
  2. プロジェクトのプロパティダイアログが開くので、実行可能ファイルの作成タブを選択します。
  3. 条件付きコンパイル引数に以下の書式で条件を定義します。
書式

[] : 省略可

キー1 =1 [: キーn = 値n]
  • キー名、値は任意に設定してください。
  • キーを複数定義する場合、":"で区切ります。
COM_ENABLE = 1 : SOCKET_ENABLE = 0

目次へ

2-2. コード側の記述

コード側は条件付きコンパイルする個所を、"#If ... Then ... #End If"ディレクティブで囲みます。
書式は通常の"If ... Then ... End If"ステートメントとほとんど同じです。
ただし#If ... Then ... #End If"ディレクティブでは、"Not"は使用できません。

  • キーと値が等しい場合に実行する処理
#If キー名 =Then
    'キーと値が等しい場合の処理を記述します。
#End If
  • キーと値が等しい場合とキーと値が等しくない場合に実行する処理
#If キー名 =Then
    'キーと値が等しい場合の処理を記述します。
#Else
    'キーと値が等しくない場合の処理を記述します。
#End If
  • キーと値1...値nが等しい、またはそれ以外の場合に実行する処理
#If キー名 =1 Then
    'キーと値1が等しい場合の処理を記述します。
#ElseIf キー名 = 値n Then
    'キーと値nが等しい場合の処理を記述します。
#Else
    'キーが上記以外の場合の処理を記述します。
#End If

目次へ

3. おわりに

C言語のように、VB6で"#If ... Then ... #End If"ディレクティブが使用できるとは思いませんでした。
今回は制御用アプリの開発だったため、実機が用意されるまで外部機器との通信処理等を条件付きコンパイルで無効化して開発しました。

【IT派遣テクノウェイブ】

かんたんプログラミング Visual Basic 6 応用編

かんたんプログラミング Visual Basic 6 応用編

紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。

目次へ


私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。

また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。

EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688

目次へ