Vb.net 进程()中程序文件(86)路径的正确Visual Basic引用

Vb.net 进程()中程序文件(86)路径的正确Visual Basic引用,vb.net,visual-studio,gnupg,Vb.net,Visual Studio,Gnupg,我想弄清楚这件事已经有一段时间了。我在网上搜索过,我尝试过的解决方案似乎不起作用 这在我的电脑上运行正常: Dim sourceName As String = File_To_Encrypt Dim gpgsourceName As String = File_To_Encrypt & ".gpg" Dim argumentString As String = " --batch --yes --recipient recname --encrypt " & sourceNam

我想弄清楚这件事已经有一段时间了。我在网上搜索过,我尝试过的解决方案似乎不起作用

这在我的电脑上运行正常:

Dim sourceName As String = File_To_Encrypt
Dim gpgsourceName As String = File_To_Encrypt & ".gpg"
Dim argumentString As String = " --batch --yes --recipient recname --encrypt " & sourceName
Dim gpgcmd As String = "\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe"
Process.Start(gpgcmd, argumentString)
当我尝试在生产中运行时,它不起作用。我是VB新手我尝试过很多组合:

"""\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe"""""
ControlChars.Quote & "\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe" & ControlChars.Quote

甚至我在搜索中也看到了这一点:“c:\sp`ace\test.ps1”请让管理员将gpg.exe放入PATH环境变量中,这样可以避免这些长文件路径。到那时,如果需要扩展到多个系统,它已经是每个系统的一部分,这是一个先决条件

“不起作用”到底是怎么回事?您确定问题是引用而不是其他内容吗?我在上面添加了详细信息,您不需要在那里引用任何内容(在
VB.Net
C
中,该字符串在此上下文中是有效路径)。您确定您的应用程序不需要管理员权限,或者为此设置了“特殊”组策略,以便任何人都可以从任何地方访问该管理员共享吗?您是否尝试过使用IP地址而不是计算机名称?请将反勾改为反斜杠,从“\\serv2014\c$\Program`Files`(x86)\GnuPG\bin\gpg.exe”改为“\\serv2014\c$\Program\Files\(x86)\GnuPG\bin\gpg.exe”
程序文件(x86)
是目录的名称,而不是三个单独的目录。
"\\serv2014\c$\Program` Files` (x86)\GnuPG\bin\gpg.exe"
 """\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe"""
"\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe"""
C:\WINDOWS\system32>"\\serv2014\c$\Program Files (x86)\GnuPG\bin\gpg.exe" --batch --yes --recipient recpname --encrypt \\serv2014\e$\Extracts\filename.csv