[PowerShell V2 CTP3]PowerShellでVB.NET

by HIRO 2. 7月 2009 09:46

前回はPowerShellでC#を使用したので、今回はVB.NETを使用する方法について説明します。

PowerShellでVB.NETのソースコードを展開する場合もAdd-Typeコマンドレットを使用します。

Add-Type コマンドレットには -Languageパラメータという言語を指定するパラメータがあるのですが、"VisualBasic"と指定するとVB.NETを使用できるようになります。

既定値はC#となっているので、前回は指定しなかったというわけです。

使用可能な言語とパラメータに指定する値は下記の通りです(*)。

言語 パラメータ値
C# CSharp
CSharpVersion3
VB.NET VisualBasic
JScript JScript

* C#がなぜ2通りあるのかわかりません。どのように差が出るのか... わかる方いましたら情報いただけると助かります。

Add-Typeコマンドレットの書式は下記の通りとなります。

Add-Type -Language 使用する言語 展開するソースコード

 

以下は、乱数を作成するメソッドをVB.NETで作成し、PowerShellで使用できるようにします。

$source = @"
Public Class MyFunction

    Public Shared Function GetRandom( _
        ByVal MinValue As Integer, _
        ByVal MaxValue As Integer) As Integer
        Dim r As New System.Random()
        Return r.Next(MinValue, MaxValue)
    End Function


    Public Function GetRandom2() As Integer
        Dim r As New System.Random()
        Return r.Next(0, 10)
    End Function
End Class
"@


Add-Type -Language VisualBasic $source

C#のときと同様に Sharedなメソッドは

[クラス名]::メソッド

で使用できます。

今回作成したクラスMyFunctionにあるメソッド GetRandomは

PS> [MyFunction]::GetRandom(-5, 5)

のようにして使用します。この場合は-5~5までの間の乱数を返します。

インスタンスを作成する場合も前回と同様で

変数 = New-Object クラス名

とします。

今回のクラスの場合は

PS> $MyFunc = New-Object MyFunction

としてインスタンスを作成し

PS> $MyFunc.GetRandom2()

として使用します。

最新のブログ

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

Tags:

PowerShell V2 CTP3 | コマンドレット

Calendar

<<  7月 2009  >>
月曜火曜水曜木曜金曜土曜日曜
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

View posts in large calendar
Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010 PowerShell from Japan!!