VB.NETのコードを利用する
C#の項でAdd-Typeコマンドレットの利用方法が分かりましたので、今度はVB.NETのコードを利用する例を見てみましょう。
C#で使用したSampleClassをVB.NETに置き換えたものを次に示します。
$source2=@"
Public Class SampleClass2
Public Shared Function SayHello(ByVal Name As String) As String
return "Hello " + Name
End Function
Public Shared Function SayHello2(ByVal Name As String) As String
return "こんにちは" + Name + "さん"
End Function
End Class
"@
このコードをAdd-Typeコマンドレットを使用してPowerShellから利用できるようにするには、次のように入力します。
Add-Type -Language VisualBasic -TypeDefinition $Source
SampleClass2のSayHello2メソッドを利用するには
[SampleClass2]::SayHello2("CodeZine")
のようにします。
実行結果は図2のようになります。

ファイルからの読み込み
既存の資産としてC#やVB.NETのソースファイルがある場合は、直接読み込んで使用できます。
ソースファイルを読み込む場合の構文は次の通りです。
Add-Type -Path 読み込むソースファイルのパス
たとえばC#の例で示したコードがSampleClass.csとして保存されている場合を見てみましょう。
public class SampleClass{
public static string SayHello(string Name)
{
return "Hello " + Name;
}
public static string SayHello2(string Name)
{
return "こんにちは" + Name + "さん";
}
}
この場合は
Add-Type -Path SampleClass.cs
となります。
ファイルから読み込んだ場合も使用方法は変わりません。
[クラス名]::メソッド名
で利用することができます。
まとめ
PowerShellからC#やVB.NETのコードを利用する方法を知っておけば、既存の資産を有効活用することができます。
利用方法はとても簡単ですので、ぜひ身につけて業務に活かしていただければ幸いです。
この記事は参考になりましたか?
既に会員の方はを行ってください。
- PowerShell 2.0の新機能連載記事一覧
-
- PowerShell 2.0の新機能(7) ――デバッグ編
- PowerShell 2.0の新機能(6) ――他言語の利用
- PowerShell 2.0の新機能(5) ――トランザクション編
- この記事の著者
-
HIRO(ヒロ)
HIRO's.NETのHIROです。とある半導体工場のSEです。VB.NET, C#, PowerShellによるプログラミングを楽しんでいます。最近はBlog でPowerShellについて書いています。2008/07/07にPowerShell from Japan!!というサイトを立ち上げまし...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
