3

我想创建一个调用两个文件的快捷方式,首先它调用 Excel.exe,然后它调用我的加载项。

我做了以下测试:

Target:
"C:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE" "C:\MyAddin.xll"

它工作正常。现在我想在 inno-setup 中实现它。

我必须通过 inno-setup 中的一些自动化来获取 Excel.exe 位置,我将其存储在全局变量中。

这是我尝试过的:

Name: {commondesktop}\{#MyAppName}; Filename: ExcelExecutablePath; 
Parameters: {app}\{#MyAppExeName}; Tasks: desktopicon; 
Flags: CreateOnlyIfFileExists; IconFilename: {app}\Icons\TimeCard64.ico;

我也尝试过其他的东西,但我对这个有点不知所措。

提前致谢。让我知道我是否应该更清楚一些事情!

4

1 回答 1

5

要查找“excel”的位置,您可以查询“App Paths”注册表项,如果它在代码部分的函数中包含“excel.exe”。例子:

 
[Icons]
Name: "{commondesktop}\My Excel File"; Filename: "{code:GetExcelPath}"; Parameters: """C:\MyAddin.xll"""

..

[Code]
function GetExcelPath(dummy: string): string;
begin
  RegQueryStringValue(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\excel.exe', '', Result);
  if Result = '' then
    Result := 'excel.exe';
end;
于 2012-05-09T22:54:20.627 回答