应用程序中的vb.net参数/命令行
我想创建自己的命令行。(作为windows应用程序,而不是提示符) 示例:应用程序中的vb.net参数/命令行,vb.net,Vb.net,我想创建自己的命令行。(作为windows应用程序,而不是提示符) 示例:-f{filepath}-d{filename}在textbox1中 -f C://Windows/Users/Myname/Documents -d junk.exe 因此,它必须过滤文件路径和文件名 所以它变成了这个my.computer.filesystem.delete(“C://Windows/Users/Myname/Documents”,“junk.exe”) 谢谢 您可以通过以下方式获取命令行参数: Di
-f{filepath}-d{filename}
在textbox1中
-f C://Windows/Users/Myname/Documents -d junk.exe
因此,它必须过滤文件路径和文件名
所以它变成了这个my.computer.filesystem.delete(“C://Windows/Users/Myname/Documents”,“junk.exe”)
谢谢 您可以通过以下方式获取命令行参数:
Dim arguments As String() = Environment.GetCommandLineArgs()
我在MSDN上找到了它。您可以使用此函数获取所需参数的值(参数名称必须包含“-”符号) 如果将此函数用作
GetParameter(“-f”)
,并且命令行参数为
-f C://Windows/Users/Myname/Documents-d junk.exe
然后您将获得C://Windows/Users/Myname/Documents
作为输出。现在,如果您的命令行有一个空格,您可以将它括在双引号内,以避免它被解释为“多个参数”
现在,在事件处理方法(可能是单击按钮)中,您可以使用:-
My.Computer.FileSystem.Delete(GetParameter(TextBox1.Text, "-f"), GetParameter(TextBox1.Text, "-d"))
。。。完成工作。希望有帮助:-)。如果您有问题,请在下面进行评论已更新但是如何过滤
-f
或-d
之后的文本?您将得到一个包含所有参数的数组,因此第一个参数将是-f,第二个包含您的foldername,第三个包含-d,依此类推。需要一个遍历所有参数的循环(foreach…),在这个循环中,您可以分析您喜欢的任何内容。您可能希望为…下一个循环而不是foreach。。。自从foreach。。。不能保证它会以正确的顺序处理。所以类似于i as Int32=0的参数。计数-1。。。我不明白。我只是保留了这个错误:“String”类型的值不能转换为“String的一维数组”谢谢!!但是命令行在textbox1.text中,而不是在cmd提示符中。我该如何编码才能从文本框中获取它?我看不到你所做的编辑?对不起,我非常感谢你和其他人的帮助。我不太擅长编码,这就是为什么我使用vb.net。当我在文本框1中找到行“-d hello”
并单击按钮1MsgBox(GetParameter(“-d”)
时,它会给我C:\Users\Kennen\AppData\Local\Temporary Projects\WindowsApplication1\bin\Debug\WindowsApplication1.vshost.exe
哦,编辑没有显示出来。等等,过一会儿我再试一次。Youuureee。。。欢迎就您所知,regex部分是模拟实际的命令行字符串解码行为。
My.Computer.FileSystem.Delete(GetParameter(TextBox1.Text, "-f"), GetParameter(TextBox1.Text, "-d"))