【发布时间】:2021-03-18 23:48:25
【问题描述】:
我正在尝试在我的 WPF 应用程序中实现自动更新功能。所以我正在测试一个临时项目并关注this guide。
这是我的MainWindow.xaml:
<Window x:Class="AutoUpdate.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" Loaded="MainWindow_OnLoaded"
Title="MainWindow" Height="350" Width="525">
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center" TextElement.FontSize="20">
<TextBlock x:Name="CurrentVersion" Text="Loading..."/>
<TextBlock x:Name="NewVersion" />
</StackPanel>
</Window>
然后,我的xaml.cs 文件:
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private async void MainWindow_OnLoaded(object sender, RoutedEventArgs e)
{
using (var updateManager = new UpdateManager(@"C:\AutoUpdate\Releases"))
{
CurrentVersion.Text = $"Current version: {updateManager.CurrentlyInstalledVersion()}";
var releaseEntry = await updateManager.UpdateApp();
NewVersion.Text = $"Update Version: {releaseEntry?.Version.ToString() ?? "No update"}";
}
}
}
我所做的唯一不同之处在于创建 .nupkg,因为我是通过 NugetPackageExplorer 创建的。但是运行时出现以下错误:
Update.exe 未找到,不是 Squirrel 安装的应用程序?
Update.exe 需要什么?我在我的应用程序的localappdata 中有它。可能缺少什么?
【问题讨论】:
-
@mfkl,在进入这里之前,我已经按照博客所说的做了。我什至把
Update.exe到处都放了,但无济于事。 -
你在 Visual Studio 中调试吗?
-
@JacobShanley 是的
-
这能解决你的问题吗:stackoverflow.com/questions/64683230/…?
标签: c# squirrel.windows