|
|
|
C# has a nice feature that VB.NET lacks: the ability to define a Main procedure that takes an array of strings, each one containig one of the arguments passed on the command line. It's easy to mimick this feature in VB, though.
In fact, while the Command function is still supported in VB.NET, you can retrieve command-line arguments more easily with the GetCommandLineArgs static method of the System.Environment class. This method parses the command-line text and returns individual arguments in an array of strings. Therefore you can have the "real" Sub Main procedure pass this array to a second Main procedure, which is where the real processing occurs. For example, the following code shows how you can build a console application that takes exactly two arguments: |
Click here to copy the following block | Module Module1
Sub Main() Main(Environment.GetCommandLineArgs()) End Sub
Private Sub Main(ByVal args() As String) If args Is Nothing OrElse args.Length <> 3 Then Console.WriteLine("Syntax error.") Else End If End Sub
End Module |
Keep in mind that the first command-line argument is always the complete filename of the running executable, therefore the first argument is args(1). If you still need the entire command-line, without it being split in arguments, you can use the Environment.CommandLine static method. UPDATE: Richard Deeming and Burton Rodman wrote us to point at an alternative, and much cleaner way, to have your VB app take arguments. You just need to define a Sub Main that takes an array of strings: |
The args array will be filled with the command-line arguments, _ excluding the name of the executable.
|
|
|
|
Submitted By :
Nayan Patel
(Member Since : 5/26/2004 12:23:06 PM)
|
|
|
Job Description :
He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting. |
View all (893) submissions by this author
(Birth Date : 7/14/1981 ) |
|
|