如何每月无形下载并执行一个文件给用户?

时间:2011-01-10 18:42:20

标签: c++ windows

我需要一种方法来下载(从服务器)并每月自动且无形地向用户执行文件。

我该怎么做?

3 个答案:

答案 0 :(得分:3)

不要盲目地按计划检查更新。相反,请检查用户何时启动您的应用程序(每次,或每隔10次,或每隔30天,但仅在应用程序被使用时)。

用户在他们没有运行的应用程序占用资源时讨厌它。

正如Steve Jessop所指出的那样,如果应用程序长时间保持运行,偶尔也会检查一下。

Installing a "Scheduled Task"仍然是可行的方法,但将其设置为手动运行而不是定期运行,然后您的应用可以触发它。可以trigger a task执行的应用程序具有比应用程序本身更高的权限(首先创建任务需要完全管理权限)。该任务还remembers the last time it ran,这对于减少流量非常有用。

答案 1 :(得分:1)

您构建为Windows service的应用程序将在后台运行,并且可以执行您想要的操作。

  

Microsoft Windows服务,以前   称为NT服务,使您能够   创建长期运行的可执行文件   运行在自己的应用程序   Windows会话。这些服务可以   当自动启动时   电脑靴,可以暂停和   重新启动,并且不显示任何用户   接口。这些功能使   适合在服务器上使用的服务   无论何时你需要长时间运行   功能不会干扰   与正在处理的其他用户   同一台电脑。

答案 2 :(得分:0)

最少侵入性的方法就是检查应用程序何时启动。 (每次,或每隔10次,或其他)。我知道其他大型应用程序不这样做,但作为一个用户我真的很讨厌它,将这些应用程序视为“臃肿”并尽可能避免。 (例如:iTunes)。当我正在尝试做其他事情时,其他任何事情都会堵塞我的电脑。

此外,您最好确保代码可以安全运行;使用数字签名确保代码真的来自你。否则你很容易受到中间人攻击:我可以设置一个仿制服务器并向你的用户发送恶意代码。 (或者破解你的服务器并将恶意代码上传到你的服务器,供你的用户使用。等等。)