软件:Inno Setup 5.4.1汉化增强版
系统:windows 7问题描述:
      1、 在windows7或vista下,如何让Inno Setup生成的setup.exe文件能双击“以管理员身份运行”,而不需要右键-〉以管理员身份运行         在inno setup编辑器中,“工具”-〉选项,有“始终以管理员身份运行安装/卸载”选项,在调试过程可以直接以管理员身份运行setup.exe文件,没有问题。单独运行setup.exe文件不是以身份运行。
      2、在windows7或vista下,用Inno Setup生成的setup.exe安装包没有创建桌面快捷方式(这种情况在xp系统中不存在),如何能添加桌面快捷方式
原因:
注意:以上问题,在xp系统中都不存在诚心向高手们求助,出于项目快要交付,所以很急,请大家帮帮忙,谢谢!!

解决方案 »

  1.   

     VISTA&Windows 7 都使用了UAC来控制程序访问,对于一些需要使用管理员身份运行的程序就得右键以管理员身份运行。        C# 编程中可以使程序自动使用管理员身份运行,也就是我们常常看到一些程序的图标上会冒出个盾牌。方法:在源码的Properties目录中找到 app.manifest,将其中level="asInvoker" 改成 level="requireAdministrator"就可以了,如果没有app.manifest文件可以打开项目属性,找到安全性项,勾上启用 ClickOnce 安全设置,这时会生成app.manifest文件,然后再把勾去掉,不要选上。     这样你重新编译,你的程序图标上就会出现个小盾牌了,就自动以管理员身份运行你的程序,无需右键打开。
      

  2.   

    http://bbs.hanzify.org/simple/?t60724.html
      

  3.   

    谢谢,楼上的回复!
    请问我在Inno Setup编译环境下如何设置,我觉得在inno setup里写代码是可以实现的,因为在inno setup的工具-〉选项中存在“始终以管理员身份运行安装/卸载”,这样在调试的过程中就是以管理员身份运行的
      

  4.   


    这个功能好像只能在xp下使用,很多网友反映在win vista/7下未能通过
      

  5.   


    那是不是只能用app.exe.manifest的方法了?inno setup支持Pascal语言,不知道能不能通过pascal编程方式实现?郁闷中
      

  6.   

    换用了Nsis打包工具,不存在类似的问题,此问题已解决。