我使用ClickOnce部署C#应用程序。它仅在线提供,因此我无法禁用应用程序以在每次启动时检查更新。
每次从url启动时,您都会看到“验证应用程序要求”窗口。这可以。但是,此窗口消失所需的时间差别很大。有时它是即时的,有时需要几秒钟。任何人都知道为什么会这样,以及如何加快这个验证过程?
我正在使用process p = Runtime.getRuntime().exec("explorer myURL")
启动该应用程序。我不知道这是否重要或是否有更好的方法? (我从Java应用程序启动此应用程序)
答案 0 :(得分:1)
有几个原因导致此过程可能需要几秒钟才能执行。首先,如果您的ClickOnce服务器繁忙,可能需要半秒或更长时间才能响应.application
文件的请求。
此外,Microsoft .application
文件必须由Microsoft Installer软件解析和检查。如果Microsoft Installer应用程序未加载到内存中,则PC将需要启动该应用程序并传入.application文件。这也可能需要一两秒钟。
最后,如果所有内容都是最新的,则将执行该应用程序。这可能需要一到两秒钟。每个步骤可能相当短,但如果您在每个步骤的“最坏情况”情况下操作,则应用程序可能需要6-10秒才能启动。如果ClickOnce应用程序服务器非常繁忙,可能会更慢。
这不是一个解决方案,但我非常有信心答案是你不能加快这个过程。最好的办法是确保您的ClickOnce Web服务器处于快速数据连接状态,并确保您的计算机互联网连接可靠并且连接速度快。