VB   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了vb.net如何将带空格的字符串传递给命令行大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Process调用外部程序:
Dim strExe As String = "E:\Projects\Common Files\mktorrent.exe"
    Dim p As New Process
    Dim pinfo As New ProcessStarTinfo
    pinfo.UseSHellExecute = false
    pinfo.RedirectStandardOutput = True
    pinfo.Arguments = " -a http://blah.com/Announce.php -l " & FileSizeMarker & " " & fn
    pinfo.Filename = strExe
    pinfo.WorkingDirectory = fn.SubString(0,fn.LasTindexOf("\"))
    pinfo.WindowStyle = ProcessWindowStyle.Normal
    pinfo.CreateNoWindow = True
    p.StarTinfo = pinfo
    p.Start()

问题在于文件名(上面的变量fn).如果它有空格,命令会阻塞 – 没有空格,它可以正常工作.我试过添加1,2或3个引号,如下所示:

fn = chr(34) & chr(34) & chr(34) & fn & chr(34) & chr(34) & chr(34)

并且

fn = "\") & chr(34) & fn & "\"& chr(34)

和许多其他组合,但它仍然给我一个错误.有关如何让它工作的任何想法?
TIA

请查看以下链接,它在C#中,可能对您有所帮助

Word command-line-arguments space issues

大佬总结

以上是大佬教程为你收集整理的vb.net如何将带空格的字符串传递给命令行全部内容,希望文章能够帮你解决vb.net如何将带空格的字符串传递给命令行所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。