&引用;“字符无效”;VB.NET

&引用;“字符无效”;VB.NET,vb.net,Vb.net,因此,它的作用是将一个报告从资源复制到计算机上并运行它。代码是: Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load Dim dir As String = My.Computer.FileSystem.SpecialDirectories.Temp Dim filename As String = dir + +"Report.exe" IO.File.WriteAl

因此,它的作用是将一个报告从资源复制到计算机上并运行它。代码是:

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    Dim dir As String = My.Computer.FileSystem.SpecialDirectories.Temp
    Dim filename As String = dir + +"Report.exe"
    IO.File.WriteAllBytes(filename, My.Resources.Report)
    Process.Start(filename)
End Sub
它给了我一个错误的过程。开始说

“字符无效”


我制作了另一个表单并编写了流程。开始部分,并没有给我任何错误。我尝试删除所有以前的代码,并在过程中替换“filename”。从实际目录开始,但没有任何帮助。我真的需要一些帮助,谢谢。

可能发生的情况是临时文件夹返回了无效字符。相反,请尝试使用该方法,并使用该方法构建路径。以下是构建字符串的示例:

Dim dir As String = IO.Path.GetTempPath
Dim filename As String = IO.Path.Combine(dir, "report.exe")

你好像遗漏了什么
dir++“Report.exe”
我的意思是,那部分没有给我任何错误。它不是任何字符串。这只是主进程。Start()代码。感谢您指出额外的“+”但遗憾的是,它没有修复错误:(将选项strict设置为on,并使用&来连接字符串。此外,您是否尝试在生成报表exe文件后手动运行该文件?可能内容错误。我的报表工作正常,我将选项strict设置为on,并使用“&”但我也遇到了同样的错误。谢谢你的帮助!重新启动Visual Studio以某种方式消除了错误,但我会改用它。@Iquired-是的,我建议这样做。特别是因为IO.Path.Combine是专门构建文件路径位置的。但我很高兴你能让它工作起来,这不是很常见的“关闭后再打开”的老方法诡计奏效;)