路径/文件名怪异/长时在计算机上启动进程的问题

时间:2016-08-17 12:33:24

标签: vb.net process processstartinfo

我有一些使用进程打开文件的代码。它突然停止工作,当我开始调查时,我发现这是由于路径的长度/怪异(特殊字符)。

如果我将文件移动到另一个目录和/或重命名它,它会打开没有问题。另外,如果我在另一台计算机上创建一个相同的目录并运行相同的代码,则可以使用

我用来开始这个过程的代码如下(但是如果我使用Process.start(path)也没关系。

Dim pToStart as ProcessStartInfo
pToStart = New ProcessStartInfo(filepath)
pToStart.WindowStyle = ProcessWindowStyle.Maximized
pToStart.UseShellExecute = True
System.Diagnostics.Process.Start(pToStart)

我无法透露确切的路径名称(因为文件名有一些保密信息),但我可以提供粗略的信息。 " X"表示字母数字字符," z"只是延伸。

工作:

  • C:\ Users \ User \ Downloads \ xxxxxxx.zzz
  • C:\目录\首先 最后\ xxxxx_xxxx_xxxx_xxxx_xx_x.zzz

不工作:

  • C:\ Directory \ First Last \ xx_xxxxx_xxxxx_x%_xxx x-xx.x_xx.zzz
  • C:\ Directory \ First Last \ xx_xxxxx_xxxxx_x%_xxx x-xx.x_xx.zzz

计算机看起来像是在尝试打开一些东西,但没有任何反应。该过程在任务管理器中简要启动,然后结束。

感谢。

1 个答案:

答案 0 :(得分:0)

请参阅此帖子,了解有关检索等效短文件名的信息:

https://stackoverflow.com/questions/12727806/file-shortpath-for-vb-net

然后看看你是否可以使用短文件名。