VB.NETの小技まとめ

VB.NETで使える小技をいくつか紹介します。

Windowsバッチを起動する方法

ここでは、VB.NETからWindowsバッチを起動する方法を紹介します。

VB.NETからWindowsバッチを起動するには、Processクラスを使います。

<サンプル>

Public Class Form1
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Dim p As New System.Diagnostics.Process
p.StartInfo.FileName = “C:\wk\test4.bat”
p.Start()

End Sub
End Class

このプログラムでは、C直下のWKフォルダにある「test4.bat」というWindowsバッチを起動させています。

まず「Dim p As New System.Diagnostics.Process」でProcessクラスを生成しています。そして「p.StartInfo.FileName = “C:\wk\test4.bat”」で開始するプロセスの名前を指定。「p.Start()」でプロセスを実行しています。

ランダムな値を取得する方法

ここでは、VB.NETでランダムな値を取得する方法を紹介します。

VB.NETでランダムな値を取得するには、Randomクラスを使います。

<サンプル>

Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim r = New Random()
MsgBox(r.Next(1, 101))
End Sub
End Class

この例では、「Dim r = New Random()」でRandomクラスを生成しています。「MsgBox(r.Next(1, 100))」で1以上、101未満のランダムな値を取得しています。r.Next(10)のようにすると0以上10未満のランダムな値が取得できます。

現在の1カ月後・1ヵ月前の日付を取得する方法

ここでは、VB.NETで現在の1カ月後・1ヵ月前の日付を取得する方法を紹介します。

VB.NETで現在の1カ月後・1ヵ月前の日付を取得するには、ADDMONTHSメソッドを使います。

<サンプル>

Public Class Form1
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Dim d = DateTime.Now
Dim str = d.AddMonths(1).ToShortDateString
MsgBox(str)

End Sub
End Class

「Dim d = DateTime.Now」で現在の日付を取得しています。
さらに、「d.AddMonths(1)」で現在の日付にプラス1ヵ月した値を取得しています。一ヵ月前の値を取得したい場合は、「d.AddMonths(-1)」としてください。

コンピュータ名を取得する方法

ここでは、VB.NETでコンピュータ名を取得する方法を紹介します。

VB.NETでコンピュータ名を取得するには、GetHostNameメソッドを使います。

<サンプル>

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim hn = Net.Dns.GetHostName()
MsgBox(hn)

End Sub

Net.Dns.GetHostName()」でホストネーム、つまりコンピュータ名を取得しています。