WIN10应用程序自启动功能及InstallShield读写64位系统注册表相关问题的解决

1. 问题:应用程序需要随系统启动,同时该应用程序也需要获得管理员权限才可以运行,在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run位置,设置了相关启动项,发现无法随机启动。发现,若应用程序不获得管理员权限下,即UAC等级一般下,可以正常随操作系统启动。若设置UAC的等级为管理员,则不能随操作系统启动。

解决方法:利用一个UAC一般的程序,设置其随操作系统启动,启动后,将业务用的应用程序启动。

2.问题: InstallShield2015生成的安装包是X32位的,尽管其安装的目标应用程序是X64的。出现的问题是,在InstallShield的脚本文件中,利用了RegDBSetDefaultRoot  RegDBDeleteValue两个函数操作注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,发现RegDBDeleteValue执行失败。

 发现:其真正操作的是计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run注册表。在此,大家可以搜索WOW6432Node相关资料学习。解决方法也就简单了:

解决方法:

  在操作注册表前,增加:REGDB_OPTIONS = REGDB_OPTIONS | REGDB_OPTION_WOW64_64KEY; 

  在操作注册表后,增加:REGDB_OPTIONS = REGDB_OPTIONS & ~REGDB_OPTION_WOW64_64KEY;

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在InstallShield中设置开机自启动程序,可以按照以下步骤操作: 1. 打开您的InstallShield项目,并导航到“组织视图”选项卡。 2. 从左侧的“行动”窗格中,选择“文件和文件夹”选项。 3. 在右侧的“文件和文件夹”窗格中,选择您希望在启动时自动运行的可执行文件。 4. 在选中该文件之后,转到“属性”窗格并将其“Permanent”属性设置为“True”,以确保文件在安装过程中一直存在。 5. 接下来,从“行动”窗格中选择“注册表”选项。 6. 在右侧的“注册表”窗格中,选择您希望将启动项添加到的注册表项。例如,您可以选择“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run”。 7. 在选中注册表项后,单击“新建值”按钮并输入要创建的值的名称。 8. 将新创建的值的数据设置为您要自动启动的可执行文件的路径。 9. 保存您的更改并重新构建安装程序,然后进行安装即可。 这样,您的安装程序将在系统启动时自动启动指定的可执行文件。 ### 回答2: 在InstallShield中设置开机自启动有以下步骤: 1. 打开InstallShield并打开您的项目。在“项目视图”下选择“维护”或“转换设置”。 2. 在“转换设置”对话框中,选择“文件位置”选项卡。然后选择“工作站”(如果项目类型为Basic MSI)或“目标计算机”(如果项目类型为InstallScript)下的“系统配置”。 3. 在“系统配置”窗口中,选择“自动启动”选项。这将允许您设置开机自启动功能相关设置。 4. 在“自动启动”面板中,选择“启用自动启动”复选框。这将启用安装程序在操作系统启动时自动运行的功能。 5. 您可以选择指定自动启动程序的名称和说明。这些信息将显示在Windows任务管理器中。 6. 在“启动文件”字段中,指定安装程序启动时要打开的文件的路径。 7. 您还可以选择是否在登录时运行自动启动程序,以及选择使用当前用户或所有用户安装。 8. 关闭“系统配置”窗口并保存更改。 9. 重新构建您的安装程序,并确保生成的安装程序已正确设置开机自启动功能。 通过按照上述步骤设置,您的InstallShield项目将具有开机自启动功能。请记住,在部署到实际计算机之前,最好在测试环境中进行验证和调试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值