Files
TimerApp/PortableMode.cs

47 lines
1.7 KiB
C#

using System;
namespace TimerApp
{
internal static class PortableMode
{
private const string PortableEnvVarName = "TIMERAPP_PORTABLE";
public static bool IsPortable
{
get
{
try
{
string? env = Environment.GetEnvironmentVariable(PortableEnvVarName);
if (!string.IsNullOrWhiteSpace(env))
{
if (string.Equals(env, "0", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "false", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "no", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "off", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "disable", StringComparison.OrdinalIgnoreCase))
{
return false;
}
if (string.Equals(env, "1", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "true", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "yes", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "on", StringComparison.OrdinalIgnoreCase) ||
string.Equals(env, "enable", StringComparison.OrdinalIgnoreCase))
{
return true;
}
}
return true;
}
catch
{
return true;
}
}
}
}
}