Small Basic: VB.NET でエクステンションを作成する方法 (ja-JP)

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!


他の言語

Sort by: Published Date | Most Recent | Most Useful
Comments
  • I've confirmed this article working with Microsoft Visual Basic 2010 Express.

  • この記事の内容は Microsoft Visual Basic 2010 Express での動作を確認済みです。

Page 1 of 1 (2 items)