|
@@ -10,16 +10,18 @@ namespace SyncTrayzor.Services.UpdateManagement
|
|
|
{
|
|
{
|
|
|
private readonly IUpdateDownloader updateDownloader;
|
|
private readonly IUpdateDownloader updateDownloader;
|
|
|
private readonly IProcessStartProvider processStartProvider;
|
|
private readonly IProcessStartProvider processStartProvider;
|
|
|
|
|
+ private readonly IAssemblyProvider assemblyProvider;
|
|
|
|
|
|
|
|
private string installerPath;
|
|
private string installerPath;
|
|
|
|
|
|
|
|
public string VariantName { get { return "installed"; } }
|
|
public string VariantName { get { return "installed"; } }
|
|
|
public bool CanAutoInstall { get; private set; }
|
|
public bool CanAutoInstall { get; private set; }
|
|
|
|
|
|
|
|
- public InstalledUpdateVariantHandler(IUpdateDownloader updateDownloader, IProcessStartProvider processStartProvider)
|
|
|
|
|
|
|
+ public InstalledUpdateVariantHandler(IUpdateDownloader updateDownloader, IProcessStartProvider processStartProvider, IAssemblyProvider assemblyProvider)
|
|
|
{
|
|
{
|
|
|
this.updateDownloader = updateDownloader;
|
|
this.updateDownloader = updateDownloader;
|
|
|
this.processStartProvider = processStartProvider;
|
|
this.processStartProvider = processStartProvider;
|
|
|
|
|
+ this.assemblyProvider = assemblyProvider;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
public async Task<bool> TryHandleUpdateAvailableAsync(VersionCheckResults checkResult)
|
|
public async Task<bool> TryHandleUpdateAvailableAsync(VersionCheckResults checkResult)
|
|
@@ -48,7 +50,7 @@ namespace SyncTrayzor.Services.UpdateManagement
|
|
|
if (this.installerPath == null)
|
|
if (this.installerPath == null)
|
|
|
throw new InvalidOperationException("TryHandleUpdateAvailableAsync returned false: cannot call AutoInstall");
|
|
throw new InvalidOperationException("TryHandleUpdateAvailableAsync returned false: cannot call AutoInstall");
|
|
|
|
|
|
|
|
- this.processStartProvider.StartElevatedDetached(this.installerPath, "/SILENT");
|
|
|
|
|
|
|
+ this.processStartProvider.StartElevatedDetached(this.installerPath, "/SILENT", this.assemblyProvider.Location);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|