如何确定可执行文件的安装位置?

时间:2014-01-14 17:40:05

标签: vba vbscript

在我的机器上,Ghostscript(GS)安装在:

C:\Program Files\gs\gs9.01\bin\gswin32.exe

但是在另一台机器上,可能安装了不同的版本:

C:\Program Files\gs\gs7.52\bin\gswin32.exe

甚至在完全不同的子文件夹中:

C:\Program Files\ghost\script\gs8.00\bin\gswin32.exe

我正在尝试找到一个VBS函数来确定在当前计算机上找到gswin32.exe的路径,首先尝试只使用不同的子文件夹\gs\

Set oShell = createObject("WScript.Shell")
objShell.Run("C:\Program Files\gs\*\bin\gswin32.exe")

然而,这不起作用。路径中也没有任何其他通配符。我现在怀疑这是否是正确的做法,所以我的问题是:

如何确定可执行文件gswin32.exe的安装位置?

1 个答案:

答案 0 :(得分:2)

最简单的方法是检查注册表。

您正在寻找的是这两个注册表项:

  1. HKEY_LOCAL_MACHINE \ SOFTWARE \ GPL Ghostscript
  2. HKEY_LOCAL_MACHINE \ SOFTWARE \ AFPL Ghostscript
  3. 如果机器上安装了Ghostscript,您应该至少找到以上一种。

    这些键包含已安装的Ghostscript版本子键...其中包含指向dll / exe文件的字符串值。

    此外,请确保您不要像在64位操作系统上那样硬编码“gswin32.exe”文件名,名称为“gswin64.exe”。