代码之家  ›  专栏  ›  技术社区  ›  Dabblernl

如何将ClickOnce程序添加到Vista任务调度程序?

  •  5
  • Dabblernl  · 技术社区  · 16 年前

    这应该是一个重复的问题,但我还没有找到答案。 我想添加一个任务到Vista任务调度程序,启动我的ClickOnce安装程序。据我所知,应用程序的.exe是隐藏的?所以我尝试输入桌面快捷方式作为“操作”选项卡中要启动的项目。但这不起作用。我收到一条错误消息,说明快捷方式不是有效的win32应用程序。

    现在怎么办?

    4 回复  |  直到 11 年前
        1
  •  2
  •   RobinDotNet    16 年前

    不过,有一点需要注意。如果希望它作为ClickOnce应用程序运行,即获取更新,则必须调用appif-ms文件,而不是直接调用exe。运行exe只是作为常规应用程序运行,它将永远不会检查更新。如果你打算这样做,你也可以只需xcopy应用程序并将其粘贴到一个文件夹中,然后安排它运行。

    您可以检查这个关于自动启动ClickOnce应用程序的线程。

    http://news.softpedia.com/news/How-To-Add-an-Application-To-Startup-Using-The-Registry-43488.shtml

        2
  •  3
  •   Ken Haley    14 年前

    在Windows7中,我发现这个解决方案似乎工作正常…

    调度程序操作:“cmd.exe”,带参数/c路径“u-prgm.apprf-ms”。我想这也适用于Vista或XP。命令shell知道如何处理apprf-ms文件,但任务调度程序只知道如何运行可执行文件。

        3
  •  2
  •   Matthew Scharley    16 年前

    ClickOnce应用程序存储在 C:\Documents and Settings\*\Local Settings\Apps\2.0\ (在XP上)。我相信你可以在Vista上找到这个,或者你正在使用的任何东西。此外,每个部署版本都存储在不同的位置,这使得这个问题相当有趣。

    我在ClickOnce应用程序上自动启动的方式是,每次启动时,它都会检查AutoStart注册表设置(如果存在),然后将其设置为当前正在执行的可执行文件的位置,以确保最新版本正在自动启动(它手动处理更新,并在完成后自行重新启动)。

    如果这是一个定期的日程安排,那么你会遇到麻烦。如果是一次性的,那么通过应用缓存搜索可能会产生结果。不过,如果您希望定期进行调度,我想您会发现使用不同的分发机制会非常容易。

        4
  •  0
  •   Rishi Pampati    11 年前

    使用以下命令创建批处理文件并计划批处理文件的运行

    “rundll32.exe dfshim.dll,shopenverbshortcut”

    推荐文章