Files
newfolder/GoldenEye/Lib/Globals.cs
Wesley Hofman 2f1f4199ad first commit
2025-09-18 14:23:18 +02:00

128 lines
4.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace GlobalScope
{
public static class Globals
{
private static String _PathToServerVersion = @"\\silicium\software\MASER software\Released\GoldenEye";
private static String _PathToPreferredInstall = @"C:\GoldenEye";
private const String _FileNameOfSoftware = "GoldenEye.exe";
private const String _UpdaterExeFile = "Updater.exe";
private const String _LegalUpdateKeyWord = "DoUpdateGoldenEye"; // LegalUpdateKeyWord cannot be changed in new build without breaking auto-update loops
private const String _UpdaterModuleDescription = "GoldenEye Updater";
private const String _SoftwareDescription = "GoldenEye";
private const String _UserRegistrationFile = "UserRegistration.txt";
private const String _CalledByUpdaterKeyWord = "CalledByGoldenEyeUpdater";
public static String CurrentDir
{
get
{
System.Reflection.Assembly a = System.Reflection.Assembly.GetEntryAssembly();
string currentExe = System.IO.Path.GetFullPath(a.Location);
return System.IO.Path.GetDirectoryName(a.Location).ToLower();
}
}
public static String BuildVersion
{
get
{
System.Reflection.Assembly ass = System.Reflection.Assembly.GetEntryAssembly();
string exe = System.IO.Path.GetFullPath(ass.Location);
DateTime dt = new System.IO.FileInfo(exe).LastWriteTimeUtc;
return String.Format("{0:0000}{1:00}{2:00}.{3:00}", dt.Year, dt.Month, dt.Day,dt.Hour);
}
}
public static FileInfo CurrentExe
{
get
{
System.Reflection.Assembly ass = System.Reflection.Assembly.GetEntryAssembly();
return new FileInfo(System.IO.Path.GetFullPath(ass.Location));
}
}
public static void RegisterUser(String Description)
{
try
{
DateTime dt = DateTime.Now;
String timestamp = String.Format("{0:0000}/{1:00}/{2:00} @ {3:00}:{4:00}", dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute);
string user = String.Format(" [User] {0}", System.Environment.UserName);
string machine = String.Format(" [Machine] {0}", System.Environment.MachineName);
string description = String.Format(" {0}",Description);
using (System.IO.StreamWriter sw = System.IO.File.AppendText(Globals.UserRegistrationFilePath))
{
sw.WriteLine(timestamp);
sw.WriteLine(user);
sw.WriteLine(machine);
sw.WriteLine(description);
}
}
catch { }
}
// Gets
public static String PathToServerVersion { get { return _PathToServerVersion; } set {_PathToServerVersion =value; } }
public static String PathToPreferredInstall { get { return _PathToPreferredInstall; } set { _PathToPreferredInstall = value; } }
public static String UpdaterModuleDescription { get { return _UpdaterModuleDescription; } }
public static String SoftwareDescription { get { return _SoftwareDescription; } }
public static String LegalUpdateKeyWord { get { return _LegalUpdateKeyWord; } }
public static String UpdaterExeFile { get { return _UpdaterExeFile; } }
public static String FileNameOfSoftware { get { return _FileNameOfSoftware; } }
public static String UserRegistrationFilePath { get { return _PathToServerVersion + "\\"+ _UserRegistrationFile; } }
public static String CalledByUpdaterKeyWord { get { return _CalledByUpdaterKeyWord; } }
public static String UserInfo
{
get
{
DateTime dt = DateTime.Now;
String timestamp = String.Format("{0:0000}/{1:00}/{2:00} @ {3:00}:{4:00}", dt.Year, dt.Month, dt.Day, dt.Hour, dt.Minute);
string result = "unknown user @ unknown machine on " + timestamp;
try
{
string user = String.Format("{0}", System.Environment.UserName);
string machine = String.Format("{0}", System.Environment.MachineName);
result = String.Format("{0} @ machine {1} on {2}", user, machine,timestamp);
}
catch { }
return result;
}
}
// Functions
private const string _SpaceReplace = "!@#$%^&*()";
public static String SpaceOut(String s) { return s.Replace(" ", _SpaceReplace); }
public static String SpaceIn(String s) { return s.Replace(_SpaceReplace, " "); }
// Cosntants
public const String AdministratorEmail = "wim.booij@maser.nl";
}
}