我正在使用My.Application.CommandLineArgs.Item(0)和My.Application.CommandLineArgs.Item(1),我通过快捷方式的路径传递参数。
"C:\SystemCheck.exe" -p:C:\TrackingPages\ -f:Tracking.exe
我是基于旧代码从头开始创建的,所以-p:和-f:是附加到我想要更改的所有快捷方式的旧标识符!
My.Application.CommandLineArgs.Item(0) --> -p:C:\TrackingPages\
My.Application.CommandLineArgs.Item(1) --> -f:Tracking.exe
以上示例适用于我的程序。
这是我的问题,如果路径中有空格,它会设置如下所示的参数。
"C:\SystemCheck.exe" -p:C:\Tracking Pages\ -f:Tracking.exe
My.Application.CommandLineArgs.Item(0) --> -p:C:\Tracking
My.Application.CommandLineArgs.Item(1) --> Pages\
我知道,如果我要放置双“”围绕路径和文件它将工作得很好并解决问题My.Application.CommandLineArgs如何接收信息。但我不想改变路径的设置方式。
答案 0 :(得分:1)
这就是命令行参数的工作原理。如果你真的不想用双引号将路径括起来,我想你必须准备好遍历所有的参数(将它们连接在一起,中间有空格),直到你找到一个以 - 开头的参数为止 - f:或者你到达论点的末尾。