Small Basic: VB.NET で拡張機能を作成する方法 (ja-JP)

この記事では、Microsoft Small Basic に追加する簡単な拡張機能(エクステンション)を作成する方法を紹介します。あらかじめ、Small Basic、.NET Framework 3.5 および Visual Basic.NET 10 が必要となります。C# で拡張機能を書くときは、こちら(英語)をクリックしてください。

ステップ 1: 拡張機能の作成


  1. Visual Basic を開き、「新しいプロジェクトを作成」をクリックします。

  2. 「クラス ライブラリ」をクリックし、名前を"MyFirstExtension"とします。

  3. プロジェクトが読み込まれた後、Class1 からすべてのコードを削除し、次のコードを貼り付けます。

    Imports System
    Imports Microsoft.SmallBasic.Library
    Imports System.Threading
    Imports System.IO
    <SmallBasicType()> _
    Public Module  FirstModule
     
        Public Function  ShowMessage(ByVal  MsgTxt As  Primitive) As  Primitive
            MsgBox(MsgTxt.ToString)
        End Function
    End Module
    
  4. ソリューション エクスプ ローラーを開き、"MyFirstExtension" を右クリックし、「参照の追加」を選びます。

  5. ダイアログ ボックスが開いた後「参照」タブをクリックし、Small Basicのフォルダーに移動し、"SmallBasicLibrary.dll" をクリックします。

  6. これですべてのエラーが消えるはずです。

 

ステップ 2: 動作させるまでの手順


Small Basic でこの拡張機能を動作するようにするには、対象のフレームワークを .NET 3.5 に変更する必要があります。

  1.  画面の上部にある [保存] ボタンをクリックし [上書き保存] します。
  2. 「プロジェクト」メニューから「MyFirstExtension のプロパティ」を選びます。
  3. 「コンパイル」タブをクリックします。
  4. 下にスクロールし [詳細コンパイル オプション] ボタンをクリックします。
  5. 「対象のフレームワーク」のドロップダウンをクリックし .NET Framework 3.5 を選択します。
  6. [OK] をクリックすると、ダイアログがポップアップするので、「はい」をクリックします。
  7. ソリューション エクスプローラーを開き、"Class1.vb"上をダブルクリックすると、再び拡張機能を開くことができます。
  8. ここで、画面の上部の「デバッグ」メニューから「MyFirstExtension のビルド」を選び .dll をビルドします。
  9. プロジェクトのフォルダー "MyFirstExtension\bin\Release"  に.dll が構築されます。
  10. エクスプローラで、"MyFirstExtension\bin\Release" にある "SmallBasicLibrary.dll" と "SmallBasicLibrary.xml" を除く全てのファイルをコピーします。
  11. Small Basic のフォルダーを開き、"lib"フォルダーがない場合、これを作成します。
  12. "lib"フォルダーを開き、プログラムをそこに貼り付けます。この操作を行うには管理者権限が必要です。
  13. Small Basic が起動している場合、一旦閉じて起動し直します。
  14. 以下の行を入力すれば拡張機能を使用するための作業は完了です。
    FirstModule.ShowMessage("YourMessageBoxTextHere")

ステップ 3: 次のステップ


FirstModule にさらに機能を作成するには、関数を追加していけばよいのです。関数に任意の変数をユーザーから引き渡すには、ByVal YOURVARIABLE をコンマで区切って指定します。関数の値を返す場合は、以下のように Return を置きます。

Public Function  NetOpen() As  Primitive
    Return My.Computer.Network.IsAvailable
End Function

Small Basic 拡張機能をもっとたくさんほしいという方は、List of SmallBasic Extensions を訪問してみてください。Small Basic のコミュニティが活動中なので、お気軽にご質問ください。Good luck!


他の言語