投稿時間:2002/12/03(Tue) 14:29 投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:コンソール出力のサンプル
> VB.NETではコマンドライン用のアプリを作れるらしいですが、
VB.NETを使った、簡単なサンプルを書いておきます。 なお、実行には.NET Frameworkが必要です。
# 最近のOSであれば、Windows Updateを行っていれば、 # ランタイムがインストールされていると思います。
Option Explicit Public Class ConsoleTestSample Public Shared Sub Main() Dim L As Integer
L = 1234 + 5678 System.Console.Write(" 2進数では、{0}で、", System.Convert.ToString(L, 2)) System.Console.WriteLine("10進数では、{0}です。", L.ToString())
System.Console.Write("[Enterキーを押すと終了します]") System.Console.Read() End Sub End Class
上記を C:\Sample.vb としてファイルに保存してください。
その上でコマンドプロンプトを起動して、.NET Frameworkに含まれる VBC.EXEのあるフォルダに移動してください。 (私の環境では、C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\ でした)
そして、そのフォルダにて、 vbc.exe /t:exe /out:"C:\Sample.exe" "C:\Sample.vb" と実行すれば、C:\Sample.exe ができあがります。
> .NET以前のVBでも、ActiveX.dllとVBScriptを使用すれば一応出来ないことは無いらしいですが… > (こっちも詳しくは知りません)。
こちらは、こんな感じ。 とりあえず、ActiveX DLLを使わない場合のサンプルです。
<?xml version="1.0" encoding="Shift_JIS"?> <package xmlns="http://schemas.microsoft.com/WindowsScriptHost"> <job id="Sample"> <script language="VBScript">'<![CDATA[ Option Explicit Dim L Dim stdOut, stdIn, buf Set stdOut = WScript.StdOut L = 1234 + 5678 stdOut.Write " 8進数では、" stdOut.Write Oct(L) stdOut.Write "で、16進数では、" stdOut.Write Hex(L) stdOut.WriteLine "です。" stdOut.WriteLine "[Enterキーを押すと終了します]" Set stdOut = Nothing Set stdIn = WScript.StdIn Do Until stdIn.AtEndOfLine buf = stdIn.Read(1) Loop Set stdIn = Nothing ']]></script> </job> </package>
上記を、C:\Sample.wsf として保存してください。 ( <?xml version="1.0"〜?>の行が 1行目になるようにして下さい) そして、コマンドプロンプトから、
CScript.exe C:\Sample.wsf
のようにして呼び出します。 # 上記では、wsfファイルを用いていますが、vbsファイルでもコード部は同等です。
|