none
winfrom 打包 怎么设置不强制往注册表写信息[ RRS feed

  • 问题

  • 在打包,注册表项中添加了个自动启动项。安装完后,运行桌面快捷方式,每次都重新检测注册表,如该键值被删,则出类似修复的界面。 直接运行exe不会....迷惑  求解。。。
    2009年12月7日 5:20

答案

  • 你好!
         你在安装的时候需要添加注册表项,如果这个注册表项没有添加成功,总是要启动修复功能的,这个行为不好更改!
         所以要修改设计:
         既然是否添加这个启动项并不影响程序的正常运行,建议不要在安装的时候添加,可以在程序加一个设置,由用户来选择是否添加启动项!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月8日 10:28
    2009年12月7日 9:05
    版主

全部回复

  • up 下,来人帮忙看看啊

    2009年12月7日 7:10
  • 你好!
         不好意思啊!没有明白你的意思啊!你想实现什么?
    周雪峰
    2009年12月7日 8:14
    版主
  • 打包winform应用程序的时候,往注册表写了开机自动运行。也就是这个位置:SOFTWARE\Microsoft\Windows\CurrentVersion\Run
    安装完成后,如果某些软件拦截了,不允许往注册表写这信息。再次运行的时候,运行桌面快捷方式会自动检测有没这键值,如没有,程序又会自动往里写。而我直接运行安装目录下的exe却不会有这现象。
    我的意思就是要运行桌面快捷方式也不检测注册表,请问是否有这属性?
    2009年12月7日 8:42
  • 你好!
         你在安装的时候需要添加注册表项,如果这个注册表项没有添加成功,总是要启动修复功能的,这个行为不好更改!
         所以要修改设计:
         既然是否添加这个启动项并不影响程序的正常运行,建议不要在安装的时候添加,可以在程序加一个设置,由用户来选择是否添加启动项!
    周雪峰
    • 已标记为答案 YiChun Chen 2009年12月8日 10:28
    2009年12月7日 9:05
    版主
  • 谢谢,就按你说的做了那。!
    2009年12月7日 9:09
  • 不客气啊!
    欢迎常常来这里和大家交流啊!
    周雪峰
    2009年12月7日 11:24
    版主
  • 你好,上面的说的这种情况,我不想通过卸载重装来解决这个问题,有别的好办法吗?

    2009年12月8日 3:46