我正在创建一个小型 c# winforms 应用程序。它使用 sqlite 数据库来存储数据,我被要求在此应用程序中添加更新功能,以便用户可以更新 sqlite 文件以及任何其他文件,而无需重新安装应用程序。
问题是,当我进行更新时,它看起来好像一切正常,没有错误等,但是当我查看应用程序安装目录时,一旦下载了更新,就会丢失一些下载的文件(通常是 pdf 文件)创建一个 Updates.txt 文件来跟踪它完成的更新。如果我随后卸载并重新安装该应用程序,即使缺少 Updates.txt 文件,它也会像它已经完成更新一样。
奇怪的是,如果我在 Visual Studio 中运行并进行更新,那么它在 100% 的时间内都可以正常工作,而这只是在我构建安装项目并安装导致问题的项目时。也许安装项目中有一个设置导致文件被复制到其他地方?我完全不知道。
请帮忙。谢谢。
编辑:这就是我下载文件的方式
String filename = "//test.pdf";
WebClient client = new WebClient();
client.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
client.DownloadFileAsync(new Uri(dlFile), System.IO.Directory.GetCurrentDirectory() + filename);
更新:这是一个权限问题,为了解决这个问题,我强制应用程序以管理员身份运行。