我正在使用this解决方案来修改MSI,以包含一个复选框,供用户决定他/她是否希望在设置退出后启动应用程序。
虽然一切正常但是我注意到应用程序无法使用自动启动时在安装过程中注册的任何COM DLL。从开始菜单再次启动时,该应用程序可以正常运行。
我在Windows XP和Windows 7上测试过它。
COM DLL已在安装项目中标记为自注册dll。
答案 0 :(得分:1)
我明白了。问题是未指定目标目录。此question中提到了错误修复。
我将脚本中的一行更改为:
sql = "INSERT INTO `CustomAction` (`Action`, `Type`, `Source`, `Target`) VALUES ('VSDCA_Launch', '226', 'TARGETDIR', '[TARGETDIR]\\" + filename + " " + arguments + "')";
答案 1 :(得分:0)
由于我没有在测试实验室中安装和使用您的安装程序和应用程序来进行一些基本的分析和故障排除,因此很难给出这样一个特定问题的答案。但是,我会在墙上提出一个想法,看看它是否坚持:
快捷方式和从安装程序创建进程的工作目录是否不同?根据您的COM注册方式,这可能会有所不同。