本文整理汇总了C#中Squirrel.UpdateManager.RemoveShortcutForThisExe方法的典型用法代码示例。如果您正苦于以下问题:C# UpdateManager.RemoveShortcutForThisExe方法的具体用法?C# UpdateManager.RemoveShortcutForThisExe怎么用?C# UpdateManager.RemoveShortcutForThisExe使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Squirrel.UpdateManager
的用法示例。
在下文中一共展示了UpdateManager.RemoveShortcutForThisExe方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: App_OnStartup
private void App_OnStartup(object sender, StartupEventArgs e)
{
if (e.Args.Length > 0)
{
using (var mgr = new UpdateManager("http://zizit.lt"))
{
// Note, in most of these scenarios, the app exits after this method
// completes!
SquirrelAwareApp.HandleEvents(
onInitialInstall: v =>
{
mgr.CreateShortcutForThisExe();
Shutdown();
},
onAppUpdate: v =>
{
mgr.CreateShortcutForThisExe();
Shutdown();
},
onAppUninstall: v =>
{
mgr.RemoveShortcutForThisExe();
Shutdown();
},
onFirstRun: () =>
{
MessageBox.Show("Success", "Installation successful", MessageBoxButton.OK);
Shutdown();
});
}
}
}
示例2: RegisterSquirrelEvents
private void RegisterSquirrelEvents()
{
var location = UpdateHelper.AppUpdateCheckLocation;
var appName = Assembly.GetExecutingAssembly().GetName().Name;
using (var mgr = new UpdateManager(location, appName, FrameworkVersion.Net45))
{
SquirrelAwareApp.HandleEvents(
onInitialInstall: v => mgr.CreateShortcutForThisExe(),
onAppUpdate: v => mgr.CreateShortcutForThisExe(),
onAppUninstall: v => mgr.RemoveShortcutForThisExe()
);
}
}
示例3: Main
static void Main()
{
try {
using (var mgr = new UpdateManager("https://s3.amazonaws.com/steamdesktopauthenticator/releases"))
{
// Note, in most of these scenarios, the app exits after this method
// completes!
SquirrelAwareApp.HandleEvents(
onInitialInstall: v => mgr.CreateShortcutForThisExe(),
onAppUpdate: v => mgr.CreateShortcutForThisExe(),
onAppUninstall: v => mgr.RemoveShortcutForThisExe(),
onFirstRun: () => ShowTheWelcomeWizard = true);
}
}
catch
{
// Not using a squirrel app
}
// run the program only once
if (PriorProcess() != null)
{
MessageBox.Show("Another instance of the app is already running.");
return;
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Manifest man = Manifest.GetManifest();
if(man.FirstRun)
{
// Install VC++ Redist and wait
new InstallRedistribForm().ShowDialog();
if (man.Entries.Count > 0)
{
// Already has accounts, just run
Application.Run(new MainForm());
}
else
{
// No accounts, run welcome form
Application.Run(new WelcomeForm());
}
}
else
{
Application.Run(new MainForm());
}
}
示例4: Main
private static void Main()
{
Task.Run(async () =>
{
var upgraded = false;
while (!upgraded)
{
await Task.Delay(TimeSpan.FromSeconds(5));
using (
var mgr = new UpdateManager(@"http://distribute.klonmaschine.de/metrothing/", "metrothing",
FrameworkVersion.Net45))
{
SquirrelAwareApp.HandleEvents(
v => mgr.CreateShortcutForThisExe(),
v => mgr.CreateShortcutForThisExe(),
onAppUninstall: v => mgr.RemoveShortcutForThisExe());
// Try the update
try
{
var updateInfo = await mgr.CheckForUpdate();
if (updateInfo != null && updateInfo.ReleasesToApply.Count > 0)
{
#if !DEBUG
await mgr.UpdateApp();
#endif
upgraded = true;
Singleton<InstallationManager>.Instance.Updated(
updateInfo.FutureReleaseEntry.Version.ToString(),
String.Join("", updateInfo.FetchReleaseNotes().Values));
}
}
catch (Exception e)
{
Trace.WriteLine("Squirrel update failed: " + e.Message);
}
}
if (!upgraded)
await Task.Delay(TimeSpan.FromHours(12));
}
});
MetroThing.Program.Main();
}
示例5: AppBootstrapper
public AppBootstrapper()
{
using (var mgr = new UpdateManager(AppInfo.UpdatePath, "Espera", FrameworkVersion.Net45))
{
// We have to re-implement the things Squirrel does for normal applications, because
// we're marked as Squirrel-aware
SquirrelAwareApp.HandleEvents(
onInitialInstall: v => mgr.CreateShortcutForThisExe(),
onAppUpdate: v =>
{
mgr.CreateShortcutForThisExe();
// Update the shortcut for the portable version
mgr.CreateShortcutsForExecutable("Espera.exe", ShortcutLocation.AppRoot, false);
},
onAppUninstall: v => mgr.RemoveShortcutForThisExe());
}
this.Initialize();
}
示例6: App
public App()
{
try
{
using (var mgr = new UpdateManager(ConfigurationManager.AppSettings["UpdatePath"]))
{
// Note, in most of these scenarios, the app exits after this method
// completes!
SquirrelAwareApp.HandleEvents(
onInitialInstall: v => mgr.CreateShortcutForThisExe(),
onAppUpdate: v => mgr.CreateShortcutForThisExe(),
onAppUninstall: v => mgr.RemoveShortcutForThisExe());
}
}
catch (Exception)
{
}
}
示例7: OnStartup
protected override void OnStartup(object sender, StartupEventArgs e)
{
base.OnStartup(sender, e);
if (!Directory.Exists(AppConfig.DownloadPath))
Directory.CreateDirectory(AppConfig.DownloadPath);
var logConfig = new LoggingConfiguration();
var target = new FileTarget
{
FileName = Path.Combine(AppConfig.LogPath, "Log.txt"),
Layout = @"${longdate}|${level}|${message} ${exception:format=ToString,StackTrace}",
ArchiveAboveSize = 1024 * 1024 * 2,
ArchiveNumbering = ArchiveNumberingMode.Sequence
};
logConfig.LoggingRules.Add(new LoggingRule("*", LogLevel.Info, target));
LogManager.Configuration = logConfig;
Locator.CurrentMutable.RegisterConstant(new NLogLogger(LogManager.GetCurrentClassLogger()), typeof(ILogger));
this.Log().Info("Flashbang is starting...");
#if !DEBUG
using (var mgr = new UpdateManager(AppConfig.UpdatePath, "Flashbang", FrameworkVersion.Net45))
{
SquirrelAwareApp.HandleEvents(v => mgr.CreateShortcutForThisExe(), v =>
{
mgr.CreateShortcutForThisExe();
mgr.CreateShortcutsForExecutable("Flashbang.exe", ShortcutLocation.AppRoot, false);
},
onAppUninstall: v => mgr.RemoveShortcutForThisExe());
}
#endif
}
示例8: CustomSquirrelSetup
/// <summary>
/// This code has to exist in order for Squirrel to work its magic.
/// What it does, is hook methods to the install/uninstall events.
/// Basic functionality includes: Create and remove shortcut upon install/uninstall,
/// as well as when updating.
/// </summary>
public static void CustomSquirrelSetup()
{
var appName = SquirrelHelper.GetAppName();
var updateLocation = SquirrelHelper.GetUpdateLocation();
using (var mgr = new UpdateManager(updateLocation, appName, FrameworkVersion.Net45))
{
SquirrelAwareApp.HandleEvents(
onInitialInstall: v =>
{
_log.Warn(Utilities.GetCallerName() + ": Installation in progress.");
CreateOrUpdateCustomRegistryEntries(mgr.RootAppDirectory);
RegisterShellExtension(mgr.RootAppDirectory);
mgr.CreateShortcutForThisExe();
},
onAppUpdate: v =>
{
_log.Warn(Utilities.GetCallerName() + ": Update in progress.");
mgr.CreateShortcutForThisExe();
CreateOrUpdateCustomRegistryEntries(mgr.RootAppDirectory, v.ToString());
RegisterShellExtension(mgr.RootAppDirectory);
},
onAppUninstall: v =>
{
_log.Warn(Utilities.GetCallerName() + ": Uninstall in progress.");
UnregisterShellExtension(mgr.RootAppDirectory);
RemoveCustomRegistryEntries(mgr.RootAppDirectory);
mgr.RemoveShortcutForThisExe();
StopBigStashOnUninstall();
CallBatchDelete(mgr.RootAppDirectory);
});
}
}
示例9: CheckForUpdates
private async void CheckForUpdates()
{
using (var mgr = new UpdateManager("http://arkmanager.teamitf.co.uk/iNGen/Releases/", "iNGen"))
{
SquirrelAwareApp.HandleEvents(
onInitialInstall: v => mgr.CreateShortcutForThisExe(),
onAppUpdate: v => mgr.CreateShortcutForThisExe(),
onAppUninstall: v => mgr.RemoveShortcutForThisExe());
try
{
UpdateInfo updateInfo = await mgr.CheckForUpdate();
if (updateInfo.FutureReleaseEntry != null)
{
if (updateInfo.CurrentlyInstalledVersion != null)
{
XElement xelement = XElement.Load("http://arkmanager.teamitf.co.uk/iNGen/version.xml");
StringReader reader = new StringReader(xelement.ToString());
System.Xml.Serialization.XmlSerializer xmlSerializer = new System.Xml.Serialization.XmlSerializer(typeof(Models.AppUpdates));
Models.AppUpdates appUpdates = (Models.AppUpdates)xmlSerializer.Deserialize(reader);
string changes = MakeChangeLog(appUpdates);
if (updateInfo.CurrentlyInstalledVersion.Version == updateInfo.FutureReleaseEntry.Version) return;
var updateDialog = new Views.AppUpdate(updateInfo, changes) { Owner = this };
var result = updateDialog.ShowDialog();
if (result == false) return;
await mgr.UpdateApp();
var oldPath = System.IO.Path.Combine(mgr.RootAppDirectory, "app-" + updateInfo.CurrentlyInstalledVersion.Version.ToString(), "UserData");
var newPath = System.IO.Path.Combine(mgr.RootAppDirectory, "app-" + updateInfo.FutureReleaseEntry.Version.ToString(), "UserData");
DirectoryInfo d = new DirectoryInfo(oldPath);
var files = d.GetFiles();
foreach (var file in files)
{
file.CopyTo(System.IO.Path.Combine(newPath, file.Name), true);
}
MessageBox.Show("iNGen Has been Updated. Please Re-Launch It.");
Application.Current.Shutdown(0);
}
else
{
await mgr.UpdateApp();
MessageBox.Show("iNGen Has been Updated. Please Re-Launch It.");
Application.Current.Shutdown(0);
}
}
}
catch (Exception ex)
{
Console.WriteLine("Checking for Updates Failed: " + ex.Message);
}
}
}