mirror of
https://github.com/microsoft/PowerToys.git
synced 2024-12-21 23:37:54 +08:00
45 lines
2.0 KiB
C#
45 lines
2.0 KiB
C#
using System;
|
|
using System.Diagnostics;
|
|
using System.IO;
|
|
using System.Reflection;
|
|
|
|
namespace Wox.Infrastructure
|
|
{
|
|
public static class Constant
|
|
{
|
|
public const string ExeFileName = "PowerLauncher";
|
|
public const string ModuleLocation = "Microsoft\\PowerToys\\Run";
|
|
public const string Plugins = "Plugins";
|
|
|
|
private static readonly Assembly Assembly = Assembly.GetExecutingAssembly();
|
|
public static readonly string ProgramDirectory = Directory.GetParent(Assembly.Location.NonNull()).ToString();
|
|
public static readonly string ExecutablePath = Path.Combine(ProgramDirectory, ExeFileName + ".exe");
|
|
|
|
public static bool IsPortableMode;
|
|
public const string PortableFolderName = "UserData";
|
|
public static string PortableDataPath = Path.Combine(ProgramDirectory, PortableFolderName);
|
|
public static string DetermineDataDirectory()
|
|
{
|
|
if (Directory.Exists(PortableDataPath))
|
|
{
|
|
IsPortableMode = true;
|
|
return PortableDataPath;
|
|
}
|
|
else
|
|
{
|
|
return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), ModuleLocation);
|
|
}
|
|
}
|
|
|
|
public static readonly string DataDirectory = DetermineDataDirectory();
|
|
public static readonly string PluginsDirectory = Path.Combine(DataDirectory, Plugins);
|
|
public static readonly string PreinstalledDirectory = Path.Combine(ProgramDirectory, Plugins);
|
|
public const string Issue = "https://github.com/microsoft/PowerToys/issues/new";
|
|
public static readonly string Version = FileVersionInfo.GetVersionInfo(Assembly.Location.NonNull()).ProductVersion;
|
|
|
|
public static readonly int ThumbnailSize = 64;
|
|
public static readonly string DefaultIcon = Path.Combine(ProgramDirectory, "Images", "app.png");
|
|
public static readonly string ErrorIcon = Path.Combine(ProgramDirectory, "Images", "app_error.png");
|
|
}
|
|
}
|