VB.NET中的连接
我试图在VB.NET中的连接,vb.net,Vb.net,我试图在过程中连接一个长字符串。启动调用,我把语法搞乱了。以下是我到目前为止的情况: System.Diagnostics.Process.Start(Environment.GetEnvironmentVariable(“VS110COMNTOOLS”)&..\Ide\MSTEST.EXE“,”/Testsettings:&rwSettings&“/Testcontainer:&rwscontainer&“/Resultsfile:&utilnamespace.rwsresults) 如您所见
过程中连接一个长字符串。启动调用,我把语法搞乱了。以下是我到目前为止的情况:
System.Diagnostics.Process.Start(Environment.GetEnvironmentVariable(“VS110COMNTOOLS”)&..\Ide\MSTEST.EXE“,”/Testsettings:&rwSettings&“/Testcontainer:&rwscontainer&“/Resultsfile:&utilnamespace.rwsresults)
如您所见,我正试图用一系列参数启动进程MSTEST.EXE
。我的问题主要围绕第一位。我需要它来获取VS2012的安装目录,这样它就知道在哪里可以找到MSTEST.EXE
,所以我试图聪明地使用环境变量,但这会返回工具目录。。。所以我需要它来备份一个步骤并进入IDE目录
我希望这样做,而不必定义自己的函数来从注册表项中查找安装目录。知道如何让它执行与。
?等效的操作吗执行目录连接最安全的方法是使用:
这将自动确保目录被正确终止。如果您只是执行直接字符串连接,并且有人或某事已从环境变量中删除了尾随\项,则直接字符串concat将产生不正确的结果(即.\tools..ide \而不是\tools..ide).执行目录连接最安全的方法是使用:
这将自动确保目录被正确终止。如果您只是执行直接字符串连接,并且某人或某事已从环境变量中删除尾随\项,则直接字符串concat将产生错误的结果(即.\tools..ide \而不是\tools..ide)。只需将..项放在路径中。”..\ide\mstest.exe“
我以为这会被解析为字符串并失败,但我会试一试。为了记录在案:string.Concat(“str1”、“str2”、“str3”)
@Bjørn RogerKringsjå我会选择string.Format而不是string.Format。System.Diagnostics.Process.Start(string.Format({0}..\ide mstest.exe/Testsettings:{1}/Testcontainer:{2}/Resultsfile:{3},Environment.GetEnvironmentVariable(“VS110COMNTOOLS”),rwContainer,utilnamespace.rwResults));
只需将..放在路径中。。。\ide\mstest.exe“
我以为这会被解析为字符串并失败,但我会试一试。只为记录:string.Concat(“str1”、“str2”、“str3”)
@Bjørn RogerKringsjå实际上我更喜欢String.Format.System.Diagnostics.Process.Start(String.Format({0}..\Ide\MSTEST.EXE/Testsettings:{1}/Testcontainer:{2}/Resultsfile:{3})、Environment.getenvironment变量(“VS110COMNTOOLS”)、rwContainer、utilnamespace.rwResults))
Dim msTestPath As String
msTestPath = IO.Path.Combine(Environment.GetEnvironmentVariable("VS110COMNTOOLS"), "..\Ide\MSTEST.EXE")