2017-07-13 36 views
0

我有一个桌面应用程序在WPF中。我已经看到第三方工具可以轻松自动更新我的应用程序,但是当计算机自动重置他的文件时我还没有看到过解决方案。如何在计算机每次关机时自动更新应用程序?

我们可以要求系统管理员安装我的应用程序,并且每次计算机重置时,应用程序仍然存在。但是,如果我想更新我的应用程序,我必须再次请系统管理员更新我的应用程序,因为据我所知,应用程序无法自行更新。

那么有没有一种解决方案可以自动更新应用程序本身,而不要求系统管理员这样做?我不一定(但可能)要求编码解决方案,但如果系统管理员可以采取措施解决问题,那也可能是一个解决方案。

+0

自动更新单元更新到应用程序本身的最新版本的最新版本?你是什​​么意思的计算机重置?你的意思是重新开始? –

+0

是的第一个问题,第二个我不确定。我的意思是重置计算机时重新启动,您在计算机上安装的文件已经消失,只有必要的文件(由系统管理员定义)在那里。 – Jonathan

+0

然后它很简单。如果您有网络,请将主应用程序保存在主服务器中(共享文件夹中)。制作一个应用程序,其唯一目的是从网络文件夹获取文件并更新当前文件。将此应用程序保存在Windows启动文件夹 –

回答

0

正如我在评论中提到,一个办法是:

保持你的主应用程序在主服务器的共享文件夹,可以通过所有在其上用户可以使用连接的计算机访问你的应用。

制作第二个应用程序,可以从网络源访问和复制您的应用程序。此代码可以帮助你开始:

string MainAppPath = @"\\NetworkLocation\myMainApp.exe"; 
AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal); 
WindowsIdentity identity = new WindowsIdentity(username, password); 
WindowsImpersonationContext context = identity.Impersonate(); 
File.Copy(MainAppPath , @"D:\UserFolder", true); 

要求系统管理员享有充分权利的添加在Windows启动文件夹此应用程序。

现在,每当计算机启动您的应用程序的时间将被更新到您将继续在网络文件夹

+0

谢谢先生! :) – Jonathan

相关问题