vb.net创建一个可以通过参数调用的应用程序

时间:2016-04-19 07:24:48

标签: vb.net windows arguments

我正在为Autodesk Inventor创建一个AddIn应用程序。这个AddIn的目的是拥有一些可以提高生产力的设计工具。

(特别是这个工具将执行复制设计,但仅用于信息。)

我已经在独立的应用程序中编写了该工具并且它可以工作,然后我添加到Autodesk Inventor AddIn中,它不再起作用了。

所以我搜索了一下,发现我应该保留独立应用程序并从AddIn调用它。

这是来自我的AddIn的电话 我这样做是这样的,我认为,msdn页面上有很多方法,但我想这就是我需要的方法

Sub OpenWithArguments()
    ' url's are not considered documents. They can only be opened
    ' by passing them as arguments.
     Process.Start("IExplore.exe", "www.northwindtraders.com")

    ' Start a Web page using a browser associated with .html and .asp files.
    Process.Start("IExplore.exe", "C:\myPath\myFile.htm")
    Process.Start("IExplore.exe", "C:\myPath\myFile.asp")
End Sub 'OpenWithArguments

但是,当我调用它时,如何创建可以接受参数的copydesign.exe?

2 个答案:

答案 0 :(得分:1)

您可以使用System.Envirement.CommandLine检查应用程序中的输入参数,并对每个命令执行适当的操作。但我建议选择另一种沟通方式。

答案 1 :(得分:0)

你实际上有两个选择(我知道):

选项1

将Main方法与参数一起使用。

代码中的某处有一个主要方法,即应用程序启动时将调用的第一个方法。它应该是这样的:

Sub Main()
  ...
End Sub

您实际上可以确定此方法应该接收参数:

Sub Main(ByVal cmdArgs() As String)
  For Each Arg As String in cmdArgs
    'Do some stuff with this Arg
    Debug.Writeline("Argument : " & Arg)
  Next For
End Sub

Check this link for more information

选项2

使用Environment

的CommanLine属性
Sub Main()      
  Dim arguments As String() = Environment.GetCommandLineArgs()
  For Each Arg As String in arguments
    'Do some stuff with this Arg
    Debug.Writeline("Argument : " & Arg)
  Next For
End Sub

Check this link for more information

修改

请注意,通常您收到的第一个参数将是您的可执行文件的路径...所以您总是还有一个不需要的参数......