Sicherung

This commit is contained in:
Maier Stephan SI
2023-01-16 16:03:54 +01:00
parent 43297bb259
commit 63512e77aa
22 changed files with 1293 additions and 1218 deletions

View File

@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using FSI.Lib.Helpers;
namespace FSI.BT.Tools
@@ -8,14 +9,14 @@ namespace FSI.BT.Tools
{
public static bool CheckSuperAdminRight()
{
if (Global.Settings.SuperAdmin == null)
if (Global.AppSettings.SuperAdmin == null)
{
return false;
}
System.Security.Principal.WindowsIdentity windowsIdentity = System.Security.Principal.WindowsIdentity.GetCurrent();
if (string.Equals(Global.Settings.SuperAdmin, windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
if (string.Equals(Lib.DeEncryptString.DeEncrypt.DecryptString(Lib.DeEncryptString.DeEncrypt.DecryptString(Global.AppSettings.SuperAdmin, AppDomain.CurrentDomain.FriendlyName), AppDomain.CurrentDomain.FriendlyName), windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
return true;
return false;
@@ -23,18 +24,18 @@ namespace FSI.BT.Tools
public static bool CheckAdminRight()
{
if (Global.Settings.Admins == null)
if (Global.AppSettings.Admins == null)
{
return false;
}
List<string> admins = new List<string>(Global.Settings.Admins);
List<Settings.StringValue.IStringValue> users = Global.AppSettings.Admins.ToList();
System.Security.Principal.WindowsIdentity windowsIdentity = System.Security.Principal.WindowsIdentity.GetCurrent();
foreach (string admin in admins)
foreach (var user in users)
{
if (string.Equals(admin, windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
if (string.Equals(Lib.DeEncryptString.DeEncrypt.DecryptString(user.Value, AppDomain.CurrentDomain.FriendlyName), windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
return true;
}
@@ -43,18 +44,18 @@ namespace FSI.BT.Tools
public static bool CheckUserRight()
{
if (Global.Settings.Users == null)
if (Global.AppSettings.Users == null)
{
return false;
}
List<string> users = new List<string>(Global.Settings.Users);
List<Settings.StringValue.IStringValue> users = Global.AppSettings.Users.ToList();
System.Security.Principal.WindowsIdentity windowsIdentity = System.Security.Principal.WindowsIdentity.GetCurrent();
foreach (string user in users)
foreach (var user in users)
{
if (string.Equals(user, windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
if (string.Equals(Lib.DeEncryptString.DeEncrypt.DecryptString(user.Value, AppDomain.CurrentDomain.FriendlyName), windowsIdentity.ShortName(), StringComparison.OrdinalIgnoreCase))
return true;
}

View File

@@ -7,6 +7,9 @@ using FSI.Lib.CompareNetObjects;
using Config.Net.Stores;
using System.IO;
using Config.Net;
using System.Collections.Generic;
using System.Linq;
using System;
namespace FSI.BT.Tools
{
@@ -15,18 +18,15 @@ namespace FSI.BT.Tools
/// </summary>
public partial class App : System.Windows.Application
{
private static readonly KeyGesture RadialMenu = new KeyGesture(Key.OemBackslash, ModifierKeys.Control);
private static readonly KeyGesture TimeStamp = new KeyGesture(Key.C, ModifierKeys.Control | ModifierKeys.Alt);
private static readonly KeyGesture RadialMenu = new(Key.OemBackslash, ModifierKeys.Control);
private static readonly KeyGesture TimeStamp = new(Key.C, ModifierKeys.Control | ModifierKeys.Alt);
public void Application_Startup(object sender, StartupEventArgs e)
{
Global.Log.Info("Anwendung wurde gestartet!");
Global.Settings = new AppSettings(GetType().Namespace.ToString() + ".xml");
Global.Settings.Load();
// App-Settings
JsonConfigStore _store = new JsonConfigStore(System.IO.Path.Combine(Directory.GetCurrentDirectory(), "config.json"), true);
Global.AppSettings = new ConfigurationBuilder<Settings.AppSettings.IAppSettings>()
.UseConfigStore(_store)
@@ -42,24 +42,18 @@ namespace FSI.BT.Tools
HotkeyManager.Current.AddOrReplace("TimeStampToClipboard", TimeStamp, TimeStampToClipboard);
Global.FrmRadialMenu = new FrmRadialMenu();
Global.WinCC = new Lib.Guis.SieTiaWinCCMsgMgt.ViewModel()
{
Data = Global.AppSettings.WinCC
};
Global.WinCC.Init();
Global.WinCC = new Lib.Guis.SieTiaWinCCMsgMgt.ViewModel.ViewModelWinCC(
Global.Settings.SieTiaWinCCMsgMgtAutostart,
Global.Settings.SieTiaWinCCMsgMgtUpdateIntervall,
Global.Settings.SieTiaWinCCMsgMgtWindowsName,
Global.Settings.SieTiaWinCCMsgMgtClassName,
Global.Settings.SieTiaWinCCMsgMgtBtnName
);
Global.Iba = new Lib.Guis.IbaDirSync.ViewModel.ViewModelIba(
Global.Settings.IbaRecordDestinationath,
Global.Settings.IbaRecordSourcePath,
Global.Settings.IbaAutoSync
);
Global.WindowMgt = new Lib.Guis.SetSizePosExWindow.ViewModel.ViewModelWindow();
Global.WindowMgt.AutoStart = Global.Settings.WindowMgtAutostart;
Global.WindowMgt.UpdateIntervall = Global.Settings.WindowMgtUpdateInterval;
Global.Iba = new Lib.Guis.IbaDirSync.ViewModel()
{
Data = Global.AppSettings.IbaDirSync
};
Global.Iba.Init();
}
@@ -81,17 +75,17 @@ namespace FSI.BT.Tools
e.Handled = true;
}
private void DeCrypt(ref IEnumerable<Settings.StringValue.IStringValueCrypt> values)
{
var valuesToDeCrypt = values.ToList();
foreach (var value in valuesToDeCrypt.ToList())
value.ValueDeCrypt = Lib.DeEncryptString.DeEncrypt.DecryptString(value.Value, AppDomain.CurrentDomain.FriendlyName);
}
private void Application_Exit(object sender, ExitEventArgs e)
{
AppSettings tmpSetting = new AppSettings(Global.Settings.FileName);
tmpSetting.Load();
CompareLogic compareLogic = new CompareLogic();
ComparisonResult result = compareLogic.Compare(Global.Settings, tmpSetting);
if (!result.AreEqual)
{
Global.Settings.Save();
}
if (Global.Iba.RoboCopy != null)
{
@@ -99,6 +93,6 @@ namespace FSI.BT.Tools
Global.Iba.RoboCopy.Dispose();
}
}
}
}

View File

@@ -1,78 +0,0 @@
using FSI.Lib.WinSettings;
using System.Collections.ObjectModel;
namespace FSI.BT.Tools
{
public class AppSettings : XmlSettings
{
public AppSettings(string fileName) : base(fileName)
{
SuperAdmin = "maier_s";
}
[EncryptedSetting]
public string[] Users { get; set; }
[EncryptedSetting]
public string[] Admins { get; set; }
[EncryptedSetting]
public string SuperAdmin { get; set; }
//public string TimeStampFormat { get; set; }
//public string[] SieSimaticManagerExe { get; set; }
//public string[] SieTiaV13Exe { get; set; }
//public string[] SieTiaV14Exe { get; set; }
//public string[] SieTiaV15Exe { get; set; }
//public string[] SieTiaV16Exe { get; set; }
//public string[] SieTiaV17Exe { get; set; }
//public string[] SieTiaVStarterExe { get; set; }
public string[] EplExe { get; set; }
//public string EplArguments { get; set; }
//public string[] NppExe { get; set; }
//public string[] TotalCmdExe { get; set; }
//public string[] TeXstudioExe { get; set; }
//public string[] TeXstudioPath { get; set; }
//public string[] VsExe { get; set; }
//public string[] VsCodeExe { get; set; }
//public string[] RdpExe { get; set; }
//public string[] OutlookExe { get; set; }
//public string[] TeamsExe { get; set; }
//public string TeamsArg { get; set; }
//public string[] ExcelExe { get; set; }
//public string[] WordExe { get; set; }
//public string[] PaintNetExe { get; set; }
//public string[] GimpExe { get; set; }
//public string[] VncExe { get; set; }
//public string[] VncAdrBookExe { get; set; }
//public string[] IbaAnalyzerExe { get; set; }
//public string ZentralWebUrl { get; set; }
//public string SchichtbuchUrl { get; set; }
//public string SPSUrl { get; set; }
//public string Pl1PlsUrl { get; set; }
//public string Pl2PlsUrl { get; set; }
//public string Pl2Als { get; set; }
//public string Pl3PlsUrl { get; set; }
//public string GiteaUrl { get; set; }
//public string WikiUrl { get; set; }
//public string ErpUrl { get; set; }
//public string EplPdfPath { get; set; }
//public string EplPrjPath { get; set; }
public bool SieTiaWinCCMsgMgtAutostart { get; set; }
public int SieTiaWinCCMsgMgtUpdateIntervall { get; set; }
public string SieTiaWinCCMsgMgtWindowsName { get; set; }
public string SieTiaWinCCMsgMgtClassName { get; set; }
public string SieTiaWinCCMsgMgtBtnName { get; set; }
public bool IbaAutoSync { get; set; }
public string IbaRecordSourcePath { get; set; }
public string IbaRecordDestinationath { get; set; }
public int WindowMgtUpdateInterval { get; set; }
public bool WindowMgtAutostart { get; set; }
public string[] WindowMgtBezeichnung { get; set; }
public string[] WindowMgtName { get; set; }
public string[] WindowMgtClassName { get; set; }
public string[] WindowMgtX { get; set; }
public string[] WindowMgtY { get; set; }
public string[] WindowMgtHeight { get; set; }
public string[] WindowMgtWight { get; set; }
}
}

View File

@@ -0,0 +1,308 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Threading;
using System.Windows;
using static FSI.BT.Tools.Settings.Cmd;
using static FSI.BT.Tools.Settings.Exe;
namespace FSI.BT.Tools.Commands
{
/// <summary>
/// Shows the main window.
/// </summary>
public class CmdCommand : CommandBase<CmdCommand>
{
public override void Execute(object parameter)
{
if (parameter is not string)
{
Global.Log.Error("Parameter ist kein String");
return;
}
var cmds = Global.AppSettings.Cmds.ToList();
ICmd selectedCmd = null;
// IEnumerable<Settings.Exe.IExe> files = new List<Settings.Exe.IExe>();
IExe selectedFile;
switch ((string)parameter)
{
case "EplPrj":
//selectedFile = GetApp(Global.AppSettings.Apps.Epl);
//Lib.Guis.Prj.Mgt.FrmMain frmMainEplPrj = new()
//{
// ShowPdf = false,
// CloseAtLostFocus = true,
// WindowStartupLocation = WindowStartupLocation.CenterScreen,
// Path = FSI.BT.Tools.Settings.AppSettings.GetFolderByName(Global.AppSettings.Folders, "EplPrj").path,
// EplExe = selectedFile.ExePath,
//};
//frmMainEplPrj.Show();
return;
case "EplPdf":
Lib.Guis.Prj.Mgt.FrmMain frmMainEplPdf = new()
{
ShowPdf = true,
CloseAtLostFocus = true,
WindowStartupLocation = WindowStartupLocation.CenterScreen,
Path = FSI.BT.Tools.Settings.AppSettings.GetFolderByName(Global.AppSettings.Folders, "EplPdf").path
};
frmMainEplPdf.Show();
return;
case "EplPdfMgt":
Lib.Guis.Pdf.Mgt.FrmMain frmMainEplPdfMgt = new()
{
CloseAtLostFocus = true
};
frmMainEplPdfMgt.Show();
return;
case "DeEncrypt":
Lib.Guis.DeEncryptMessage.FrmMain frmMainDeEnCrypt = new()
{
Password = AppDomain.CurrentDomain.FriendlyName,
CloseAtLostFocus = true,
WindowStartupLocation = WindowStartupLocation.CenterScreen,
};
frmMainDeEnCrypt.Show();
return;
case "StarterCsvExporter":
Lib.Guis.SieStarterCsvExporter.FrmMain frmMain = new();
frmMain.Show();
return;
case "Folder":
Lib.Guis.Folder.Mgt.FrmMain frmFolderMgtMain = new()
{
CloseAtLostFocus = true,
Data = Global.AppSettings.Folders
};
frmFolderMgtMain.Show();
return;
case "TxtToClip":
Lib.Guis.TxtToClip.Mgt.FrmMain frmTxtToClipMain = new()
{
CloseAtLostFocus = true,
InputData = Global.AppSettings.TxtToClip
};
frmTxtToClipMain.Show();
return;
default:
foreach (ICmd cmd in cmds)
{
if (String.Equals(parameter.ToString().ToLower(), cmd.Cmd.ToLower()))
{
selectedCmd = cmd;
}
}
break;
}
if (selectedCmd == null)
return;
OpenExe(selectedCmd);
OpenUrl(selectedCmd);
}
public override bool CanExecute(object parameter)
{
var cmds = Global.AppSettings.Cmds.ToList();
ICmd selectedCmd = null;
switch ((string)parameter)
{
case "EplPrj":
return true;
case "EplPdf":
return true;
case "EplPdfMgt":
return Global.AdminRights;
case "DeEncrypt":
return Global.AdminRights;
case "StarterCsvExporter":
return Global.AdminRights;
case "Folder":
return Global.AppSettings.Folders != null;
case "TxtToClip":
return Global.AppSettings.TxtToClip != null;
default:
foreach (ICmd cmd in cmds)
{
if (String.Equals(parameter.ToString().ToLower(), cmd.Cmd.ToLower()))
{
selectedCmd = cmd;
}
}
break;
}
if (selectedCmd == null)
return false;
foreach (var file in selectedCmd.Exe.ToList())
{
if (File.Exists(Environment.ExpandEnvironmentVariables(file.ExePath.Trim())))
{
return true;
}
}
foreach (var url in selectedCmd.Urls)
{
if (url != String.Empty)
{
return true;
}
}
return false;
}
private static void OpenExe(ICmd selectedCmd)
{
IExe selectedFile = GetApp(selectedCmd.Exe);
if (selectedFile == null)
return;
if (selectedFile.ExePath == String.Empty)
return;
if (ProgramIsRunning(selectedFile.ExePath))
{
ProgramToFront(selectedFile.ExePath);
Global.Log.Info("Anwendung \"{0}\" wurde in den Vordergrund gebracht", selectedFile.ExePath);
}
else
{
Process process = new();
process.StartInfo.FileName = selectedFile.ExePath;
process.StartInfo.WorkingDirectory = selectedFile.Path == null ? selectedFile.Path : Path.GetDirectoryName(selectedFile.ExePath);
process.StartInfo.Arguments = selectedFile.Arguments;
try
{
process.Start();
Global.Log.Info("Anwendung \"{0}\" wurde gestartet", selectedFile.ExePath);
}
catch (System.ComponentModel.Win32Exception ex) when (ex.NativeErrorCode == 740)
{
try
{
process.StartInfo.UseShellExecute = true;
process.StartInfo.Verb = "runas";
process.Start();
Global.Log.Info("Anwendung \"{0}\" wurde als Admin gestartet", selectedFile.ExePath);
}
catch (Exception ex2)
{
Global.Log.Info("Anwendung konnte durch folgenden Fehler \"{0}\" nicht gestartet werden.", ex2.Message);
}
}
}
}
private static void OpenUrl(ICmd selectedCmd)
{
foreach (var url in selectedCmd.Urls)
{
if (url == String.Empty)
return;
Process.Start(new ProcessStartInfo(url.Replace("&", "^&")) { UseShellExecute = true });
Global.Log.Info("Link \"{0}\" wurde geföffnet.", url.Replace("&", "^&"));
Thread.Sleep(100);
}
}
private static bool ProgramIsRunning(string FullPath)
{
string FilePath = Path.GetDirectoryName(FullPath);
string FileName = Path.GetFileNameWithoutExtension(FullPath).ToLower();
bool isRunning = false;
Process[] pList = Process.GetProcessesByName(FileName);
foreach (Process p in pList)
{
if (p.MainModule.FileName.StartsWith(FilePath, StringComparison.InvariantCultureIgnoreCase))
{
isRunning = true;
break;
}
}
return isRunning;
}
private static IExe GetApp(IEnumerable<IExe> files)
{
if(files.ToList().Count == 0)
return null;
var selectedFile = files.ToList()[0];
foreach (var file in files.ToList())
{
if (File.Exists(Environment.ExpandEnvironmentVariables(file.ExePath.Trim())))
selectedFile = (IExe)file;
else
continue;
}
return selectedFile;
}
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool SetForegroundWindow(IntPtr handle);
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool ShowWindow(IntPtr handle, int nCmdShow);
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool IsIconic(IntPtr handle);
private static void ProgramToFront(string FullPath)
{
string FilePath = Path.GetDirectoryName(FullPath);
string FileName = Path.GetFileNameWithoutExtension(FullPath).ToLower();
Process[] pList = Process.GetProcessesByName(FileName);
foreach (Process p in pList)
{
if (p.MainModule.FileName.StartsWith(FilePath, StringComparison.InvariantCultureIgnoreCase))
{
IntPtr handle = p.MainWindowHandle;
if (IsIconic(handle))
{
ShowWindow(handle, 9);
}
SetForegroundWindow(handle);
break;
}
}
}
}
}

View File

@@ -1,449 +0,0 @@
using FSI.BT.Tools.Settings;
using FSI.Lib;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Windows;
namespace FSI.BT.Tools.Commands
{
/// <summary>
/// Shows the main window.
/// </summary>
public class OpenAppCommand : CommandBase<OpenAppCommand>
{
public override void Execute(object parameter)
{
IEnumerable<Settings.Exe.IExe> files = new List<Settings.Exe.IExe>();
(string ExePath, string Path, string Arguments) selectedFile = (string.Empty, string.Empty, string.Empty);
switch ((string)parameter)
{
case "SimaticManager":
files = Global.AppSettings.Apps.SieSimaticManager;
break;
case "TIAv13":
files = Global.AppSettings.Apps.SieTiaV13;
break;
case "TIAv14":
files = Global.AppSettings.Apps.SieTiaV14;
break;
case "TIAv15":
files = Global.AppSettings.Apps.SieTiaV15;
break;
case "TIAv16":
files = Global.AppSettings.Apps.SieTiaV16;
break;
case "TIAv17":
files = Global.AppSettings.Apps.SieTiaV17;
break;
case "Starter":
files = Global.AppSettings.Apps.SieTiaVStarter;
break;
case "Epl":
files = Global.AppSettings.Apps.Epl;
break;
case "EplPrj":
selectedFile = GetApp(Global.AppSettings.Apps.Epl);
Lib.Guis.Prj.Mgt.FrmMain frmMainEplPrj = new Lib.Guis.Prj.Mgt.FrmMain()
{
ShowPdf = false,
CloseAtLostFocus = true,
WindowStartupLocation = WindowStartupLocation.CenterScreen,
Path = FSI.BT.Tools.Settings.AppSettings.GetFolderByName(Global.AppSettings.Folders, "EplPrj").path,
EplExe = selectedFile.ExePath,
};
frmMainEplPrj.Show();
return;
case "EplPdf":
Lib.Guis.Prj.Mgt.FrmMain frmMainEplPdf = new Lib.Guis.Prj.Mgt.FrmMain()
{
ShowPdf = true,
CloseAtLostFocus = true,
WindowStartupLocation = WindowStartupLocation.CenterScreen,
Path = FSI.BT.Tools.Settings.AppSettings.GetFolderByName(Global.AppSettings.Folders, "EplPdf").path
};
frmMainEplPdf.Show();
return;
case "EplPdfMgt":
Lib.Guis.Pdf.Mgt.FrmMain frmMainEplPdfMgt = new Lib.Guis.Pdf.Mgt.FrmMain()
{
CloseAtLostFocus = true
};
frmMainEplPdfMgt.Show();
return;
case "Npp":
files = Global.AppSettings.Apps.Npp;
break;
case "TotalCmd":
files = Global.AppSettings.Apps.TotalCmd;
break;
case "TeXstudio":
files = Global.AppSettings.Apps.TeXstudio;
break;
case "VS":
files = Global.AppSettings.Apps.Vs;
break;
case "VS.Code":
files = Global.AppSettings.Apps.VsCode;
break;
case "Rdp":
files = Global.AppSettings.Apps.Rdp;
break;
case "DeEncrypt":
Lib.Guis.DeEncryptMessage.FrmMain frmMainDeEnCrypt = new Lib.Guis.DeEncryptMessage.FrmMain()
{
Password = GetType().Namespace.ToString(),
CloseAtLostFocus = true,
WindowStartupLocation = WindowStartupLocation.CenterScreen,
};
frmMainDeEnCrypt.Show();
return;
case "StarterCsvExporter":
Lib.Guis.SieStarterCsvExporter.FrmMain frmMain = new Lib.Guis.SieStarterCsvExporter.FrmMain();
frmMain.Show();
return;
case "Admin":
Gui.FrmAdmin frmAdmin = new Gui.FrmAdmin()
{
Admins = Global.Settings.Admins,
Users = Global.Settings.Users,
};
frmAdmin.ShowDialog();
if (frmAdmin.DialogResult.HasValue && frmAdmin.DialogResult.Value)
{
Global.Settings.Admins = frmAdmin.Admins;
Global.Settings.Users = frmAdmin.Users;
}
return;
case "Folder":
Lib.Guis.Folder.Mgt.FrmMain frmFolderMgtMain = new Lib.Guis.Folder.Mgt.FrmMain()
{
CloseAtLostFocus = true,
Data = Global.AppSettings.Folders
};
frmFolderMgtMain.Show();
return;
case "TxtToClip":
Lib.Guis.TxtToClip.Mgt.FrmMain frmTxtToClipMain = new Lib.Guis.TxtToClip.Mgt.FrmMain()
{
CloseAtLostFocus = true,
InputData = Global.AppSettings.TxtToClip
};
frmTxtToClipMain.Show();
return;
case "Outlook":
files = Global.AppSettings.Apps.Outlook;
break;
case "Teams":
files = Global.AppSettings.Apps.Teams;
break;
case "Excel":
files = Global.AppSettings.Apps.Excel;
break;
case "Word":
files = Global.AppSettings.Apps.Word;
break;
case "PaintNet":
files = Global.AppSettings.Apps.PaintNet;
break;
case "Gimp":
files = Global.AppSettings.Apps.Gimp;
break;
case "Vnc":
files = Global.AppSettings.Apps.Vnc;
break;
case "VncAdrBook":
files = Global.AppSettings.Apps.VncAdrBook;
break;
case "IbaAnalyzer":
files = Global.AppSettings.Apps.IbaAnalyzer;
break;
}
selectedFile = GetApp(files);
if (ProgramIsRunning(selectedFile.ExePath))
{
ProgramToFront(selectedFile.ExePath);
Global.Log.Info("Anwendung \"{0}\" wurde in den Vordergrund gebracht", selectedFile.ExePath);
}
else
{
Process process = new Process();
process.StartInfo.FileName = selectedFile.ExePath;
process.StartInfo.WorkingDirectory = selectedFile.Path;
process.StartInfo.Arguments = selectedFile.Arguments;
try
{
process.Start();
Global.Log.Info("Anwendung \"{0}\" wurde gestartet", selectedFile.ExePath);
}
catch (System.ComponentModel.Win32Exception ex) when (ex.NativeErrorCode == 740)
{
try
{
process.StartInfo.UseShellExecute = true;
process.StartInfo.Verb = "runas";
process.Start();
Global.Log.Info("Anwendung \"{0}\" wurde als Admin gestartet", selectedFile.ExePath);
}
catch (Exception ex2)
{
Global.Log.Info("Anwendung konnte durch folgenden Fehler \"{0}\" nicht gestartet werden.", ex2.Message);
}
}
}
}
public override bool CanExecute(object parameter)
{
IEnumerable<Settings.Exe.IExe> files = new List<Settings.Exe.IExe>();
switch ((string)parameter)
{
case "SimaticManager":
files = Global.AppSettings.Apps.SieSimaticManager;
break;
case "TIAv13":
files = Global.AppSettings.Apps.SieTiaV13;
break;
case "TIAv14":
files = Global.AppSettings.Apps.SieTiaV14;
break;
case "TIAv15":
files = Global.AppSettings.Apps.SieTiaV15;
break;
case "TIAv16":
files = Global.AppSettings.Apps.SieTiaV16;
break;
case "TIAv17":
files = Global.AppSettings.Apps.SieTiaV17;
break;
case "Starter":
files = Global.AppSettings.Apps.SieTiaVStarter;
break;
case "Epl":
files = Global.AppSettings.Apps.Epl;
break;
case "EplPrj":
return true;
case "EplPdf":
return true;
case "EplPdfMgt":
return Global.AdminRights;
case "Npp":
files = Global.AppSettings.Apps.Npp;
break;
case "TotalCmd":
files = Global.AppSettings.Apps.TotalCmd;
break;
case "TeXstudio":
files = Global.AppSettings.Apps.TeXstudio;
break;
case "VS":
files = Global.AppSettings.Apps.Vs;
break;
case "VS.Code":
files = Global.AppSettings.Apps.VsCode;
break;
case "Rdp":
files = Global.AppSettings.Apps.Rdp;
break;
case "DeEncrypt":
return Global.AdminRights;
case "StarterCsvExporter":
return Global.AdminRights;
case "Admin":
return Global.SuperAdminRights;
case "Folder":
return Global.AppSettings.Folders != null;
case "TxtToClip":
return Global.AppSettings.TxtToClip != null;
case "Outlook":
files = Global.AppSettings.Apps.Outlook;
break;
case "Teams":
files = Global.AppSettings.Apps.Teams;
break;
case "Excel":
files = Global.AppSettings.Apps.Excel;
break;
case "Word":
files = Global.AppSettings.Apps.Word;
break;
case "PaintNet":
files = Global.AppSettings.Apps.PaintNet;
break;
case "Gimp":
files = Global.AppSettings.Apps.Gimp;
break;
case "Vnc":
files = Global.AppSettings.Apps.Vnc;
break;
case "VncAdrBook":
files = Global.AppSettings.Apps.VncAdrBook;
break;
case "IbaAnalyzer":
files = Global.AppSettings.Apps.IbaAnalyzer;
break;
default: return false;
}
foreach (var file in files)
{
if (File.Exists(Environment.ExpandEnvironmentVariables(file.ExePath.Trim())))
{
return true;
}
}
return false;
}
private bool ProgramIsRunning(string FullPath)
{
string FilePath = Path.GetDirectoryName(FullPath);
string FileName = Path.GetFileNameWithoutExtension(FullPath).ToLower();
bool isRunning = false;
Process[] pList = Process.GetProcessesByName(FileName);
foreach (Process p in pList)
{
if (p.MainModule.FileName.StartsWith(FilePath, StringComparison.InvariantCultureIgnoreCase))
{
isRunning = true;
break;
}
}
return isRunning;
}
private (string ExePath, string Path, string Arguments) GetApp(IEnumerable<Settings.Exe.IExe> files)
{
(string ExePath, string Path, string Arguments) selectedFile = (string.Empty, string.Empty, string.Empty);
for (int i = 0; i < files.ToList().Count; i++)
{
if (File.Exists(Environment.ExpandEnvironmentVariables(files.ToList()[i].ExePath.Trim())))
{
selectedFile.ExePath = Environment.ExpandEnvironmentVariables(files.ToList()[i].ExePath.Trim());
selectedFile.Arguments = files.ToList()[i].Arguments;
}
else
{
continue;
}
if (selectedFile.Path == String.Empty)
{
selectedFile.Path = Path.GetDirectoryName(selectedFile.ExePath);
}
else
{
selectedFile.Path = Path.GetDirectoryName(files.ToList()[i].ExePath.Trim());
//selectedFile.Path = Environment.ExpandEnvironmentVariables(files.ToList()[i].ExePath.Trim());
}
}
return selectedFile;
}
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool SetForegroundWindow(IntPtr handle);
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool ShowWindow(IntPtr handle, int nCmdShow);
[System.Runtime.InteropServices.DllImport("User32.dll")]
private static extern bool IsIconic(IntPtr handle);
private void ProgramToFront(string FullPath)
{
string FilePath = Path.GetDirectoryName(FullPath);
string FileName = Path.GetFileNameWithoutExtension(FullPath).ToLower();
Process[] pList = Process.GetProcessesByName(FileName);
foreach (Process p in pList)
{
if (p.MainModule.FileName.StartsWith(FilePath, StringComparison.InvariantCultureIgnoreCase))
{
IntPtr handle = p.MainWindowHandle;
if (IsIconic(handle))
{
ShowWindow(handle, 9);
}
SetForegroundWindow(handle);
break;
}
}
}
}
}

View File

@@ -1,83 +0,0 @@
using FSI.Lib;
using System;
using System.Diagnostics;
namespace FSI.BT.Tools.Commands
{
/// <summary>
/// Shows the main window.
/// </summary>
public class OpenLinkCommand : CommandBase<OpenLinkCommand>
{
public override void Execute(object parameter)
{
string url = String.Empty;
switch ((string)parameter)
{
case "ZentralWeb":
url = Global.AppSettings.Urls.ZentralWeb;
break;
case "Schichtbuch":
url = Global.AppSettings.Urls.Schichtbuch;
break;
case "SPS":
url = Global.AppSettings.Urls.SPS;
break;
case "PL1.Pls":
url = Global.AppSettings.Urls.Pl1Pls;
break;
case "PL2.Pls":
url = Global.AppSettings.Urls.Pl2Pls;
break;
case "PL2.Als":
url = Global.AppSettings.Urls.Pl2Als;
break;
case "PL3.Pls":
url = Global.AppSettings.Urls.Pl3Pls;
break;
case "FSI.Gitea":
url = Global.AppSettings.Urls.Gitea;
break;
case "FSI.Wiki":
url = Global.AppSettings.Urls.Wiki;
break;
case "Erp":
url = Global.AppSettings.Urls.Erp;
break;
}
if (url == String.Empty)
return;
url = url.Replace("&", "^&");
Process.Start(new ProcessStartInfo(url) { UseShellExecute = true });
Global.Log.Info("Link \"{0}\" wurde geföffnet.", url);
}
public override bool CanExecute(object parameter)
{
string url = String.Empty;
switch ((string)parameter)
{
case "FSI.Gitea":
return Global.AdminRights;
case "FSI.Wiki":
return Global.AdminRights;
default:
return true;
}
}
}
}

View File

@@ -1,7 +1,4 @@
using System.Windows;
using System.Windows.Data;
namespace FSI.BT.Tools.Commands
namespace FSI.BT.Tools.Commands
{
/// <summary>
/// Shows the main window.
@@ -10,32 +7,15 @@ namespace FSI.BT.Tools.Commands
{
public override void Execute(object parameter)
{
Gui.FrmProcesses frm = new Gui.FrmProcesses();
frm.WinCC = Global.WinCC;
Gui.FrmProcesses frm = new Gui.FrmProcesses()
{
WinCC = Global.WinCC
};
;
frm.Iba = Global.Iba;
Global.Window.Load();
frm.WindowMgt = Global.WindowMgt;
frm.Closed += Frm_Closed;
frm.ShowDialog();
}
private void Frm_Closed(object sender, System.EventArgs e)
{
Global.WinCC = ((Gui.FrmProcesses)sender).WinCC;
Global.Settings.SieTiaWinCCMsgMgtAutostart = Global.WinCC.WinCC.AutoStart;
Global.Settings.SieTiaWinCCMsgMgtUpdateIntervall = Global.WinCC.WinCC.UpdateIntervall;
Global.Settings.SieTiaWinCCMsgMgtWindowsName = Global.WinCC.WinCC.WindowsName;
Global.Settings.SieTiaWinCCMsgMgtClassName = Global.WinCC.WinCC.WindowsClassName;
Global.Settings.SieTiaWinCCMsgMgtBtnName = Global.WinCC.WinCC.ButtonName;
Global.Iba = ((Gui.FrmProcesses)sender).Iba;
Global.Settings.IbaRecordDestinationath = Global.Iba.Iba.Destination;
Global.Settings.IbaRecordSourcePath = Global.Iba.Iba.Source;
Global.Settings.IbaAutoSync = Global.Iba.Iba.AutoStart;
Global.WindowMgt = ((Gui.FrmProcesses)sender).WindowMgt;
Global.Window.Save();
frm.ShowDialog();
}
public override bool CanExecute(object parameter)

View File

@@ -18,13 +18,9 @@ namespace FSI.BT.Tools.Commands
}
if (Global.FrmRadialMenu.Visibility == Visibility.Hidden)
{
Global.FrmRadialMenu.Visibility = Visibility.Visible;
}
else
{
Global.FrmRadialMenu.Visibility = Visibility.Hidden;
}
Global.FrmRadialMenu.Visibility = Visibility.Hidden;
Global.FrmRadialMenu.ActivateCenteredToMouse();
}

View File

@@ -62,10 +62,6 @@
<Resource Include="Icons\txt.png" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="NLog.Extensions.Logging" Version="5.2.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Config.Net\Config.Net.csproj" />
<ProjectReference Include="..\FSI.Lib\FSI.Lib\FSI.Lib.csproj" />
@@ -76,7 +72,9 @@
</ItemGroup>
<ItemGroup>
<Resource Include="Icons\1087815.png" />
<Resource Include="Icons\1087815.png">
<CopyToOutputDirectory>Never</CopyToOutputDirectory>
</Resource>
<Resource Include="Icons\Admin.jpg" />
<Resource Include="Icons\Apps.png" />
<Resource Include="Icons\Circuit.png" />
@@ -121,9 +119,6 @@
<None Update="config.json">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="FSI.BT.Tools.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Update="nlog.config">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>

View File

@@ -1,68 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Settings>
<Users>+I945AMzKKYBAAAAB21haWVyX3M=</Users>
<Admins>e+Dt7FRUDDoBAAAAB21haWVyX3M=</Admins>
<TimeStampFormat>_yyyyMMdd_HHmmss</TimeStampFormat>
<SieSimaticManagerExe>C:\Program Files (x86)\Siemens\Step7\S7BIN\S7tgtopx.exe</SieSimaticManagerExe>
<SieTiaV13Exe>C:\Program Files (x86)\Siemens\Automation\Portal V13\Bin\Siemens.Automation.Portal.exe</SieTiaV13Exe>
<SieTiaV14Exe>C:\Program Files\Siemens\Automation\Portal V14\Bin\Siemens.Automation.Portal.exe</SieTiaV14Exe>
<SieTiaV15Exe>C:\Program Files\Siemens\Automation\Portal V15\Bin\Siemens.Automation.Portal.exe,c:\Program Files\Siemens\Automation\Portal V15_1\Bin\Siemens.Automation.Portal.exe</SieTiaV15Exe>
<SieTiaV16Exe>C:\Program Files\Siemens\Automation\Portal V16\Bin\Siemens.Automation.Portal.exe</SieTiaV16Exe>
<SieTiaV17Exe>C:\Program Files\Siemens\Automation\Portal V17\Bin\Siemens.Automation.Portal.exe</SieTiaV17Exe>
<SieTiaVStarterExe>C:\Program Files (x86)\Siemens\Step7\S7BIN\u7wdrfax.exe</SieTiaVStarterExe>
<EplExe>C:\Program Files\EPLAN\Platform\2.9.4\Bin\EPLAN.exe,C:\Program Files\EPLAN\Platform\2022.0.3\Bin\Eplan.exe</EplExe>
<EplArguments>/Variant:"Electric P8"</EplArguments>
<NppExe>C:\Windows\system32\notepad.exe,c:\Program Files\Notepad++\notepad++.exe</NppExe>
<TotalCmdExe>C:\Program Files\totalcmd\TOTALCMD.EXE,C:\Program Files\totalcmd\TOTALCMD64.EXE,C:\totalcmd\TOTALCMD64.EXE,C:\totalcmd\TOTALCMD.EXE</TotalCmdExe>
<TeXstudioExe>C:\Program Files\texstudio\texstudio.exe</TeXstudioExe>
<TeXstudioPath>C:\Program Files\texstudio\dictionaries</TeXstudioPath>
<VsExe>C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\devenv.exe</VsExe>
<VsCodeExe>%USERPROFILE%\AppData\Local\Programs\Microsoft VS Code\Code.exe</VsCodeExe>
<RdpExe>%windir%\system32\mstsc.exe</RdpExe>
<OutlookExe>C:\Program Files (x86)\Microsoft Office\root\Office16\OUTLOOK.EXE</OutlookExe>
<TeamsExe>C:\Users\maier_s\AppData\Local\Microsoft\Teams\Update.exe</TeamsExe>
<TeamsArg>--processStart ""Teams.exe""</TeamsArg>
<ExcelExe>C:\Program Files (x86)\Microsoft Office\root\Office16\EXCEL.EXE</ExcelExe>
<WordExe>C:\Program Files (x86)\Microsoft Office\root\Office16\WINWORD.EXE</WordExe>
<PaintNetExe>C:\Program Files\paint.net\paintdotnet.exe</PaintNetExe>
<GimpExe>C:\Program Files\GIMP 2\bin\gimp-2.10.exe</GimpExe>
<VncExe>C:\Program Files\RealVNC\VNC Viewer\vncviewer.exe,c:\Users\maier_s\OneDrive - Fondium Group GmbH\Documents\Apps\VNC-Viewer-6.20.113-Windows-64bit.exe</VncExe>
<VncAdrBookExe>C:\Program Files\RealVNC\VNC Viewer\vncaddrbook.exe</VncAdrBookExe>
<IbaAnalyzerExe>C:\Program Files\iba\ibaAnalyzer\ibaAnalyzer.exe</IbaAnalyzerExe>
<ZentralWebUrl>http://desiaugetwf/web/?AspxAutoDetectCookieSupport=1</ZentralWebUrl>
<SchichtbuchUrl>http://10.10.1.42/SKSchichtbuchWeb/de-DE/Plugin/ShiftBook/ShiftBook/IR</SchichtbuchUrl>
<SPSUrl>http://10.10.1.42/SKChangeTrackerWeb/de-DE/Plugin/ChangeTracker</SPSUrl>
<Pl1PlsUrl>http://10.10.200.2/SKPL1Web/index.aspx</Pl1PlsUrl>
<Pl2PlsUrl>http://10.10.213.4/SKPL2Web/index.aspx</Pl2PlsUrl>
<Pl2Als>http://10.10.213.234:84/emb_1/index.html</Pl2Als>
<Pl3PlsUrl>http://10.10.202.10/SKPL3Web/index.aspx</Pl3PlsUrl>
<GiteaUrl>http://desiaugetc7-088:3000/</GiteaUrl>
<WikiUrl>http://desiaugetc7-088:3001/en/home</WikiUrl>
<ErpUrl>https://mingle-portal.eu1.inforcloudsuite.com/FONDIUM_prd</ErpUrl>
<EplPdfPath>\\10.10.1.40\Betriebstechnik\Eplan</EplPdfPath>
<EplPrjPath>\\fondium.org\DESI$\AUG_Abteilung\Betriebstechnik\EPL\P8\Data\Projekte\FSI\</EplPrjPath>
<SieTiaWinCCMsgMgtAutostart>true</SieTiaWinCCMsgMgtAutostart>
<SieTiaWinCCMsgMgtUpdateIntervall>10</SieTiaWinCCMsgMgtUpdateIntervall>
<SieTiaWinCCMsgMgtWindowsName></SieTiaWinCCMsgMgtWindowsName>
<SieTiaWinCCMsgMgtClassName>#32770</SieTiaWinCCMsgMgtClassName>
<SieTiaWinCCMsgMgtBtnName>Zur Kenntnis genommen</SieTiaWinCCMsgMgtBtnName>
<IbaAutoSync>true</IbaAutoSync>
<IbaRecordSourcePath>d:\tmp</IbaRecordSourcePath>
<IbaRecordDestinationath>c:\tmp</IbaRecordDestinationath>
<WindowMgtAutostart>false</WindowMgtAutostart>
<WindowMgtUpdateInterval>10</WindowMgtUpdateInterval>
<WindowMgtBezeichnung>Starter Trace</WindowMgtBezeichnung>
<WindowMgtName>Signalauswahl Trace</WindowMgtName>
<WindowMgtClassName>#32770</WindowMgtClassName>
<WindowMgtX>10</WindowMgtX>
<WindowMgtY>10</WindowMgtY>
<WindowMgtHeight>800</WindowMgtHeight>
<WindowMgtWight>1000</WindowMgtWight>
</Settings>

View File

@@ -8,26 +8,28 @@
ShowInTaskbar="False"
AllowsTransparency="True"
Background="Transparent"
Deactivated="Window_Deactivated">
Deactivated="Window_Deactivated"
Loaded="Window_Loaded">
<Window.Resources>
<ResourceDictionary Source="Utils/Icons.xaml" />
</Window.Resources>
<Canvas Name="cnvMain"
Height="300"
Height="350"
Width="300">
<!-- Draws a circle with a blue interior. -->
<Ellipse Width="{Binding ElementName=cnvMain,
Path=ActualWidth}"
Height="{Binding ElementName=cnvMain,
Path=ActualHeight}"
Height="300"
Fill="WhiteSmoke"
Canvas.Left="0"
Canvas.Top="0">
</Ellipse>
<Grid>
<StackPanel HorizontalAlignment="Center"
VerticalAlignment="Center">
@@ -50,21 +52,6 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuEpl}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/EplP8.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Eplan
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuApps}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -95,37 +82,6 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuSie}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/SIE.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Siemens
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
CommandParameter="TotalCmd">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/TotalCmd.jfif" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Total CMD
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuLinks}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -141,7 +97,53 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuEpl}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/EplP8.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Eplan
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuSie}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/SIE.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Siemens
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TotalCmd">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/TotalCmd.jfif" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Total CMD
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Outlook">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -157,7 +159,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Teams">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -188,7 +190,7 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Epl">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -204,7 +206,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="EplPrj">
<WrapPanel Orientation="Vertical">
<Rectangle Width="35"
@@ -220,7 +222,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="EplPdf">
<WrapPanel Orientation="Vertical">
<Rectangle Width="35"
@@ -236,7 +238,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="EplPdfMgt">
<WrapPanel Orientation="Vertical">
<Rectangle Width="35"
@@ -267,7 +269,7 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="DeEncrypt">
<WrapPanel Orientation="Vertical">
<Rectangle Width="40"
@@ -282,8 +284,8 @@
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="VS">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -299,8 +301,8 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
CommandParameter="VS.Code">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="VsCode">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -316,7 +318,7 @@
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TeXstudio">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -332,7 +334,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="StarterCsvExporter">
<WrapPanel Orientation="Vertical">
<Rectangle Width="40"
@@ -348,23 +350,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
CommandParameter="Admin">
<WrapPanel Orientation="Vertical">
<Rectangle Width="40"
Height="40">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Admin.jpg" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
Admin
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Folder">
<WrapPanel Orientation="Vertical">
<Rectangle Width="40"
@@ -380,7 +366,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TxtToClip">
<WrapPanel Orientation="Vertical">
<Rectangle Width="40"
@@ -412,8 +398,8 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
CommandParameter="SimaticManager">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="S7">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -428,7 +414,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TIAv13">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -444,7 +430,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TIAv14">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -460,7 +446,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TIAv15">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -476,7 +462,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TIAv16">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -492,7 +478,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="TIAv17">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -508,7 +494,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Starter">
<WrapPanel Orientation="Vertical">
<Rectangle Width="50"
@@ -554,7 +540,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Erp">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -571,8 +557,8 @@
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="ZentralWeb">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="ZtrlWeb">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -587,7 +573,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Schichtbuch">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -603,7 +589,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="SPS">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -619,8 +605,8 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="FSI.Gitea">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Gitea">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -635,8 +621,8 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="FSI.Wiki">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Wiki">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -665,8 +651,8 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="ZentralWeb">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="ZtrlWeb">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -681,8 +667,68 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="PL1.Pls">
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuPlantLinksPl1}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL1
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuPlantLinksPl2}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL2
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{Binding OpenRadialMenuPlantLinksPl3}">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL3
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
</RadialMenu:RadialMenu>
<RadialMenu:RadialMenu IsOpen="{Binding IsOpenPlantLinksPl1}">
<RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuCentralItem Command="{Binding OpenRadialMenuPlantLinks}">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/FondiumU.ico" />
</Rectangle.Fill>
</Rectangle>
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL1Pls">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -697,8 +743,56 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="PL2.Pls">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL1Lst">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL1<LineBreak />Leistungsdaten
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
</RadialMenu:RadialMenu>
<RadialMenu:RadialMenu IsOpen="{Binding IsOpenPlantLinksPl2}">
<RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuCentralItem Command="{Binding OpenRadialMenuPlantLinks}">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/FondiumU.ico" />
</Rectangle.Fill>
</Rectangle>
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Alg">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL2<LineBreak />Links
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Pls">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -713,8 +807,8 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="PL2.Als">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Als">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -729,8 +823,71 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenLinkCommand}"
CommandParameter="PL3.Pls">
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Lst">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL2<LineBreak />Leistungsdaten
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Nc">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL2 NC
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL2Key">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL2<LineBreak />Keymanager
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
</RadialMenu:RadialMenu>
<RadialMenu:RadialMenu IsOpen="{Binding IsOpenPlantLinksPl3}">
<RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuCentralItem Command="{Binding OpenRadialMenuPlantLinks}">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/FondiumU.ico" />
</Rectangle.Fill>
</Rectangle>
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL3Pls">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
@@ -745,6 +902,22 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PL3Lst">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
Height="30">
<Rectangle.Fill>
<ImageBrush ImageSource="../../Icons/Links.png" />
</Rectangle.Fill>
</Rectangle>
<TextBlock FontSize="14"
TextAlignment="Center">
PL3<LineBreak />Leistungsdaten
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
</RadialMenu:RadialMenu>
<RadialMenu:RadialMenu IsOpen="{Binding IsOpenApps}">
@@ -760,7 +933,7 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Npp">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -776,7 +949,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Excel">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -792,7 +965,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Word">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -808,7 +981,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="PaintNet">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -824,7 +997,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Gimp">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -838,9 +1011,9 @@
Gimp
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="IbaAnalyzer">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -870,7 +1043,7 @@
</TextBlock>
</WrapPanel>
</RadialMenu:RadialMenuItem>
</RadialMenu:RadialMenu>
<RadialMenu:RadialMenu IsOpen="{Binding IsOpenAppsVncRdp}">
@@ -886,7 +1059,7 @@
</RadialMenu:RadialMenuCentralItem>
</RadialMenu:RadialMenu.CentralItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Rdp">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -902,7 +1075,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="Vnc">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -918,7 +1091,7 @@
</WrapPanel>
</RadialMenu:RadialMenuItem>
<RadialMenu:RadialMenuItem Command="{commands:OpenAppCommand}"
<RadialMenu:RadialMenuItem Command="{commands:CmdCommand}"
CommandParameter="VncAdrBook">
<WrapPanel Orientation="Vertical">
<Rectangle Width="30"
@@ -937,6 +1110,21 @@
</RadialMenu:RadialMenu>
</Grid>
<Grid Width="300"
Height="50"
Canvas.Bottom="0">
<StackPanel Width="Auto"
HorizontalAlignment="Stretch"
Margin="5 5 5 5 ">
<TextBox x:Name="tbCmd"
FontSize="20"
KeyDown="tbCmd_KeyDown"
TextChanged="tbCmd_TextChanged" />
</StackPanel>
</Grid>
</Canvas>
</Window>

View File

@@ -1,9 +1,13 @@
using System;
using FSI.BT.Tools.Commands;
using System;
using System.ComponentModel;
using System.Drawing;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
namespace FSI.BT.Tools
{
@@ -12,13 +16,15 @@ namespace FSI.BT.Tools
/// </summary>
public partial class FrmRadialMenu : Window, INotifyPropertyChanged
{
private CmdCommand _cmd;
public FrmRadialMenu()
{
InitializeComponent();
DataContext = this;
_isOpenHome = true;
//tbversion.Text = "v" + Assembly.GetExecutingAssembly().GetName().Version.Major + "." + Assembly.GetExecutingAssembly().GetName().Version.Minor + "b";
tbversion.Text = "v" + Assembly.GetExecutingAssembly().GetName().Version.Major + "." + Assembly.GetExecutingAssembly().GetName().Version.Minor + "b";
_cmd = new ();
}
#region Home
@@ -55,6 +61,9 @@ namespace FSI.BT.Tools
IsOpenTools =
IsOpenSie =
IsOpenApps =
IsOpenPlantLinksPl1 =
IsOpenPlantLinksPl2 =
IsOpenPlantLinksPl3 =
IsOpenAppsVncRdp =
IsOpenLinks = false;
});
@@ -206,6 +215,9 @@ namespace FSI.BT.Tools
return new RelayCommand(() =>
{
IsOpenPlantLinks = true;
IsOpenPlantLinksPl1 =
IsOpenPlantLinksPl2 =
IsOpenPlantLinksPl3 =
IsOpenLinks = false;
});
}
@@ -213,6 +225,99 @@ namespace FSI.BT.Tools
#endregion
#region Anlagen Links Pl1
private bool _isOpenPlantLinksPl1 = false;
public bool IsOpenPlantLinksPl1
{
get
{
return _isOpenPlantLinksPl1;
}
set
{
_isOpenPlantLinksPl1 = value;
RaisePropertyChanged();
}
}
public ICommand OpenRadialMenuPlantLinksPl1
{
get
{
return new RelayCommand(() =>
{
IsOpenPlantLinksPl1 = true;
IsOpenPlantLinks = false;
});
}
}
#endregion
#region Anlagen Links Pl2
private bool _isOpenPlantLinksPl2 = false;
public bool IsOpenPlantLinksPl2
{
get
{
return _isOpenPlantLinksPl2;
}
set
{
_isOpenPlantLinksPl2 = value;
RaisePropertyChanged();
}
}
public ICommand OpenRadialMenuPlantLinksPl2
{
get
{
return new RelayCommand(() =>
{
IsOpenPlantLinksPl2 = true;
IsOpenPlantLinks = false;
});
}
}
#endregion
#region Anlagen Links Pl3
private bool _isOpenPlantLinksPl3 = false;
public bool IsOpenPlantLinksPl3
{
get
{
return _isOpenPlantLinksPl3;
}
set
{
_isOpenPlantLinksPl3 = value;
RaisePropertyChanged();
}
}
public ICommand OpenRadialMenuPlantLinksPl3
{
get
{
return new RelayCommand(() =>
{
IsOpenPlantLinksPl3 = true;
IsOpenPlantLinks = false;
});
}
}
#endregion
#region Apps
private bool _isOpenApps = false;
@@ -283,6 +388,8 @@ namespace FSI.BT.Tools
private void Window_Deactivated(object sender, EventArgs e)
{
tbCmd.Text = String.Empty;
tbCmd.Focus();
Visibility = Visibility.Hidden;
IsOpenHome = true;
@@ -291,8 +398,32 @@ namespace FSI.BT.Tools
IsOpenSie =
IsOpenLinks =
IsOpenApps =
IsOpenPlantLinksPl1 =
IsOpenPlantLinksPl2 =
IsOpenPlantLinksPl3 =
IsOpenAppsVncRdp =
IsOpenPlantLinks = false;
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
tbCmd.Focus();
}
private void tbCmd_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Enter && _cmd.CanExecute(((TextBox)sender).Text))
{
_cmd.Execute(((TextBox)sender).Text);
}
}
private void tbCmd_TextChanged(object sender, TextChangedEventArgs e)
{
if (_cmd.CanExecute(((TextBox)sender).Text))
((TextBox)sender).Background = new SolidColorBrush(Colors.Green);
else
((TextBox)sender).Background = new SolidColorBrush(Colors.White);
}
}
}

View File

@@ -1,9 +1,4 @@
using Config.Net.Stores;
using FSI.Lib.Guis.IbaDirSync.ViewModel;
using FSI.Lib.Guis.SetSizePosExWindow.ViewModel;
using FSI.Lib.Guis.SieTiaWinCCMsgMgt.ViewModel;
using Hardcodet.Wpf.TaskbarNotification;
using Microsoft.Extensions.Logging;
using Hardcodet.Wpf.TaskbarNotification;
using NLog;
namespace FSI.BT.Tools
@@ -11,15 +6,14 @@ namespace FSI.BT.Tools
internal static class Global
{
public static Logger Log = LogManager.GetCurrentClassLogger();
public static FrmRadialMenu FrmRadialMenu { get; set; }
public static FrmRadialMenu FrmRadialMenu { get; set; }
public static TaskbarIcon TaskbarIcon { get; set; }
public static ViewModelWinCC WinCC { get; set; }
public static AppSettings Settings { get; set; }
public static Lib.Guis.SieTiaWinCCMsgMgt.ViewModel WinCC { get; set; }
public static Settings.AppSettings.IAppSettings AppSettings { get; set; }
public static ViewModelIba Iba { get; set; }
public static ViewModelWindow WindowMgt { get; set; }
public static Lib.Guis.IbaDirSync.ViewModel Iba { get; set; }
public static Lib.Guis.SetSizePosExWindow.ViewModel WindowMgt { get; set; }
public static bool UserRights { get; set; }
public static bool AdminRights { get; set; }
public static bool SuperAdminRights { get; set; }
@@ -28,33 +22,27 @@ namespace FSI.BT.Tools
{
public static void Load()
{
for (int i = 0; i < Global.Settings.WindowMgtBezeichnung.Length; i++)
{
WindowMgt.Windows.Add(new Lib.Guis.SetSizePosExWindow.Model.Window
{
Bezeichnung = Global.Settings.WindowMgtBezeichnung[i],
Name = Global.Settings.WindowMgtName[i],
ClassName = Global.Settings.WindowMgtClassName[i],
Height = int.Parse(Global.Settings.WindowMgtHeight[i]),
Width = int.Parse(Global.Settings.WindowMgtWight[i]),
X = int.Parse(Global.Settings.WindowMgtX[i]),
Y = int.Parse(Global.Settings.WindowMgtY[i]),
});
}
//for (int i = 0; i < Global.Settings.WindowMgtBezeichnung.Length; i++)
//{
// WindowMgt.Windows.Add(new Lib.Guis.SetSizePosExWindow.IInterface()
// {
// Bezeichnung = ""
// });
//}
}
public static void Save()
{
for (int i = 0; i < Global.WindowMgt.Windows.Count; i++)
{
Global.Settings.WindowMgtBezeichnung[i] = Global.WindowMgt.Windows[i].Bezeichnung;
Global.Settings.WindowMgtName[i] = Global.WindowMgt.Windows[i].Name;
Global.Settings.WindowMgtClassName[i] = Global.WindowMgt.Windows[i].ClassName;
Global.Settings.WindowMgtHeight[i] = Global.WindowMgt.Windows[i].Height.ToString();
Global.Settings.WindowMgtWight[i] = Global.WindowMgt.Windows[i].Width.ToString();
Global.Settings.WindowMgtX[i] = Global.WindowMgt.Windows[i].X.ToString();
Global.Settings.WindowMgtY[i] = Global.WindowMgt.Windows[i].Y.ToString();
}
//for (int i = 0; i < Global.WindowMgt.Windows.Count; i++)
//{
// Global.Settings.WindowMgtBezeichnung[i] = Global.WindowMgt.Windows[i].Bezeichnung;
// Global.Settings.WindowMgtName[i] = Global.WindowMgt.Windows[i].Name;
// Global.Settings.WindowMgtClassName[i] = Global.WindowMgt.Windows[i].ClassName;
// Global.Settings.WindowMgtHeight[i] = Global.WindowMgt.Windows[i].Height.ToString();
// Global.Settings.WindowMgtWight[i] = Global.WindowMgt.Windows[i].Width.ToString();
// Global.Settings.WindowMgtX[i] = Global.WindowMgt.Windows[i].X.ToString();
// Global.Settings.WindowMgtY[i] = Global.WindowMgt.Windows[i].Y.ToString();
//}
}
}

View File

@@ -25,7 +25,7 @@
<TextBlock Text="Fenster-Name:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding WinCC.WindowsName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.WindowsName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
@@ -38,7 +38,7 @@
<TextBlock Text="Class-Name:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding WinCC.WindowsClassName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.WindowsClassName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
<Grid Margin="0 5">
@@ -50,7 +50,7 @@
<TextBlock Text="Schältfläche-Name:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding WinCC.ButtonName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.ButtonName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
<Grid Margin="0 5">
@@ -63,7 +63,7 @@
<TextBlock Text="Update-Intervall:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding WinCC.UpdateIntervall, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.UpdateIntervall, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
<TextBlock Text="ms"
Grid.Column="2"
@@ -79,7 +79,7 @@
<TextBlock Text="Autostart:"
Margin="5 5 5 5" />
<CheckBox Grid.Column="1"
IsChecked="{Binding WinCC.AutoStart, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
IsChecked="{Binding Data.AutoStart, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
@@ -112,7 +112,7 @@
<TextBlock Text="Quell-Verzeichnis:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding Iba.Source, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.Source, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
@@ -125,7 +125,7 @@
<TextBlock Text="Ziel-Verzeichnis:"
Margin="5 5 5 5" />
<TextBox Grid.Column="1"
Text="{Binding Iba.Destination, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Text="{Binding Data.Destination, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Margin="5 5 5 5" />
</Grid>
<Grid Margin="0 5">

View File

@@ -1,19 +1,4 @@
using FSI.Lib.Guis.IbaDirSync.ViewModel;
using FSI.Lib.Guis.SetSizePosExWindow.ViewModel;
using FSI.Lib.Guis.SieTiaWinCCMsgMgt.ViewModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using System.Windows;
namespace FSI.BT.Tools.Gui
{
@@ -22,15 +7,14 @@ namespace FSI.BT.Tools.Gui
/// </summary>
public partial class FrmProcesses : Window
{
public ViewModelWinCC WinCC { get; set; }
public ViewModelIba Iba { get; set; }
public ViewModelWindow WindowMgt { get; set; }
public FSI.Lib.Guis.SieTiaWinCCMsgMgt.ViewModel WinCC { get; set; }
public FSI.Lib.Guis.IbaDirSync.ViewModel Iba { get; set; }
public FSI.Lib.Guis.SetSizePosExWindow.ViewModel WindowMgt { get; set; }
public FrmProcesses()
{
InitializeComponent();
DataContext = this;
}
DataContext = this;
}
}
}

View File

@@ -1,9 +1,4 @@
using Config.Net;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections.Generic;
namespace FSI.BT.Tools.Settings
{
@@ -11,17 +6,24 @@ namespace FSI.BT.Tools.Settings
{
public interface IAppSettings
{
StringValue.IStringValue TimeStampFormat { get; set; }
Apps.IApps Apps { get; }
IEnumerable<StringValue.IStringValue> Users { get; }
IEnumerable<StringValue.IStringValue> Admins { get; }
Urls.IUrls Urls { get; }
string SuperAdmin { get; }
StringValue.IStringValue Pw { get; set; }
StringValue.IStringValue TimeStampFormat { get; set; }
IEnumerable<Cmd.ICmd> Cmds { get; }
IEnumerable<Folder.IFolder> Folders { get; }
IEnumerable<TxtToClip.ITxtToClip> TxtToClip { get; }
//[Option(Alias = "Folders")]
//string GetFolderByName(string fodlerName, string keyName);
Lib.Guis.SieTiaWinCCMsgMgt.IInterface WinCC { get; set; }
Lib.Guis.IbaDirSync.IInterface IbaDirSync { get; set; }
}
public static (string path, string description) GetFolderByName(IEnumerable<Folder.IFolder> folders, string name)
@@ -29,7 +31,7 @@ namespace FSI.BT.Tools.Settings
foreach (var folder in folders)
{
if (folder.Name.Equals(name))
{
{
return (folder.Path, folder.Description);
}
}

View File

@@ -1,39 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FSI.BT.Tools.Settings
{
public class Apps
{
public interface IApps
{
IEnumerable<Exe.IExe> SieSimaticManager { get; }
IEnumerable<Exe.IExe> SieTiaV13 { get; }
IEnumerable<Exe.IExe> SieTiaV14 { get; }
IEnumerable<Exe.IExe> SieTiaV15 { get; }
IEnumerable<Exe.IExe> SieTiaV16 { get; }
IEnumerable<Exe.IExe> SieTiaV17 { get; }
IEnumerable<Exe.IExe> SieTiaVStarter { get; }
IEnumerable<Exe.IExe> Epl { get; }
IEnumerable<Exe.IExe> Npp { get; }
IEnumerable<Exe.IExe> TotalCmd { get; }
IEnumerable<Exe.IExe> TeXstudio { get; }
IEnumerable<Exe.IExe> Vs { get; }
IEnumerable<Exe.IExe> VsCode { get; }
IEnumerable<Exe.IExe> Rdp { get; }
IEnumerable<Exe.IExe> Outlook { get; }
IEnumerable<Exe.IExe> Teams { get; }
IEnumerable<Exe.IExe> Excel { get; }
IEnumerable<Exe.IExe> Word { get; }
IEnumerable<Exe.IExe> PaintNet { get; }
IEnumerable<Exe.IExe> Gimp { get; }
IEnumerable<Exe.IExe> Vnc { get; }
IEnumerable<Exe.IExe> VncAdrBook { get; }
IEnumerable<Exe.IExe> IbaAnalyzer { get; }
}
}
}

View File

@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FSI.BT.Tools.Settings
{
public class Cmd
{
public interface ICmd
{
string Cmd { get; set; }
IEnumerable<Exe.IExe> Exe { get; }
IEnumerable<String> Urls { get; }
}
}
}

View File

@@ -1,16 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FSI.BT.Tools.Settings
namespace FSI.BT.Tools.Settings
{
public class StringValue
{
public interface IStringValue
public interface IStringValue
{
string Value { get; set; }
}
public interface IStringValueCrypt
{
string Value { get; set; }
string ValueDeCrypt { get; set; }
}
}
}

View File

@@ -1,25 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FSI.BT.Tools.Settings
{
public class Urls
{
public interface IUrls
{
string ZentralWeb { get; }
string Schichtbuch { get; }
string SPS { get; }
string Pl1Pls { get; }
string Pl2Pls { get; }
string Pl2Als { get; }
string Pl3Pls { get; }
string Gitea { get; }
string Wiki { get; }
string Erp { get; }
}
}
}

View File

@@ -1,174 +1,362 @@
{
"SuperAdmin": "QlYbjwG0MLE49l71iEav9DnCfzBlWYFtURfS4px/PB1kcePPLtByt4U7hHOPCcaLf4XhzfAz/KJ2Ud7iexbD/w==",
"Admins": [
{
"Value": "0AZTYgTy5qkhLFmi9O9taw=="
}
],
"USers": [
{
"Value": "0AZTYgTy5qkhLFmi9O9taw=="
}
],
"TimeStampFormat": {
"Value": "_yyyyMMdd_HHmmss"
},
"Apps": {
"SieSimaticManager": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\STEP7\\S7BIN\\S7tgtopx.exe",
"Path": "",
"Arguments": ""
}
],
"SieTiaV13": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\Automation\\Portal V13\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files (x86)\\Portal V13\\Bin\\Siemens.Automation.Portal.exe"
}
],
"SieTiaV14": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V14\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V14\\Bin\\Siemens.Automation.Portal.exe"
}
],
"SieTiaV15": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V15\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "c:\\Program Files\\Siemens\\Automation\\Portal V15_1\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V15_1\\Bin\\Siemens.Automation.Portal.exe"
}
],
"SieTiaV16": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V16\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V16\\Bin\\Siemens.Automation.Portal.exe"
}
],
"SieTiaV17": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V17\\Bin\\Siemens.Automation.Portal.exe"
}
],
"SieTiaVStarter": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\Step7\\S7BIN\\u7wdrfax.exe"
}
],
"Epl": [
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2.9.4\\Bin\\EPLAN.exe",
"Arguments": "/Variant:\"Electric P8\""
},
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2022.0.3\\Bin\\Eplan.exe",
"Arguments": "/Variant:\"Electric P8\""
}
],
"Npp": [
{
"ExePath": "C:\\Windows\\system32\\notepad.exe"
},
{
"ExePath": "c:\\Program Files\\Notepad++\\notepad++.exe"
}
],
"TotalCmd": [
{
"ExePath": "C:\\Program Files\\totalcmd\\TOTALCMD.EXE"
},
{
"ExePath": "C:\\Program Files\\totalcmd\\TOTALCMD64.EXE"
},
{
"ExePath": "C:\\totalcmd\\TOTALCMD64.EXE"
},
{
"ExePath": "C:\\totalcmd\\TOTALCMD.EXE"
}
],
"TeXstudio": [
{
"ExePath": "C:\\Program Files\\texstudio\\texstudio.exe"
}
],
"Vs": [
{
"ExePath": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\devenv.exe"
}
],
"VsCode": [
{
"ExePath": "%USERPROFILE%\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe"
}
],
"Rdp": [
{
"ExePath": "%windir%\\system32\\mstsc.exe"
}
],
"Outlook": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\OUTLOOK.EXE"
}
],
"Teams": [
{
"ExePath": "C:\\Users\\maier_s\\AppData\\Local\\Microsoft\\Teams\\Update.exe",
"Arguments": "--processStart \"Teams.exe\""
}
],
"Excel": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\EXCEL.EXE"
}
],
"Word": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\WINWORD.EXE"
}
],
"PaintNet": [
{
"ExePath": "C:\\Program Files\\paint.net\\paintdotnet.exe"
}
],
"Gimp": [
{
"ExePath": "C:\\Program Files\\GIMP 2\\bin\\gimp-2.10.exe"
}
],
"Vnc": [
{
"ExePath": "C:\\Program Files\\RealVNC\\VNC Viewer\\vncviewer.exe"
},
{
"ExePath": "c:\\Users\\maier_s\\OneDrive - Fondium Group GmbH\\Documents\\Apps\\VNC-Viewer-6.20.113-Windows-64bit.exe"
}
],
"VncAdrBook": [
{
"ExePath": "C:\\Program Files\\RealVNC\\VNC Viewer\\vncaddrbook.exe"
}
],
"IbaAnalyzer": [
{
"ExePath": "C:\\Program Files\\iba\\ibaAnalyzer\\ibaAnalyzer.exe"
}
]
},
"Urls": {
"ZentralWeb": "http://desiaugetwf/web/?AspxAutoDetectCookieSupport=1",
"Schichtbuch": "http://10.10.1.42/SKSchichtbuchWeb/de-DE/Plugin/ShiftBook/ShiftBook/IR",
"SPS": "http://10.10.1.42/SKChangeTrackerWeb/de-DE/Plugin/ChangeTracker",
"Pl1Pls": "http://10.10.200.2/SKPL1Web/index.aspx",
"Pl2Pls": "http://10.10.213.4/SKPL2Web/index.aspx",
"Pl2Als": "http://10.10.213.234:84/emb_1/index.html",
"Pl3Pls": "http://10.10.202.10/SKPL3Web/index.aspx",
"Gitea": "http://desiaugetc7-088:3000/",
"Wiki": "http://desiaugetc7-088:3001/en/home",
"Erp": "https://mingle-portal.eu1.inforcloudsuite.com/FONDIUM_prd"
},
"Cmds": [
{
"Cmd": "StartUp",
"Urls": [
"https://www.rockantenne.de/webradio/80er-rock?utm_id=streams&utm_medium=webplayer&utm_campaign=streamlist&utm_term=mountpoint-80er-rock&utm_content=alias-80er-rock",
"http://desiaugetwf/web/?AspxAutoDetectCookieSupport=1",
"http://10.10.1.42/SKSchichtbuchWeb/de-DE/Plugin/ShiftBook/ShiftBook/IR",
"http://10.10.1.42/SKChangeTrackerWeb/de-DE/Plugin/ChangeTracker"
]
},
{
"Cmd": "S7",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\STEP7\\S7BIN\\S7tgtopx.exe"
}
]
},
{
"Cmd": "TiaV13",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\Automation\\Portal V13\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files (x86)\\Portal V13\\Bin\\Siemens.Automation.Portal.exe"
}
]
},
{
"Cmd": "TiaV14",
"Exe": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V14\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V14\\Bin\\Siemens.Automation.Portal.exe"
}
]
},
{
"Cmd": "TiaV15",
"Exe": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V15\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "c:\\Program Files\\Siemens\\Automation\\Portal V15_1\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V15_1\\Bin\\Siemens.Automation.Portal.exe"
}
]
},
{
"Cmd": "TiaV16",
"Exe": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V16\\Bin\\Siemens.Automation.Portal.exe"
},
{
"ExePath": "C:\\Program Files\\Portal V16\\Bin\\Siemens.Automation.Portal.exe"
}
]
},
{
"Cmd": "TiaV17",
"Exe": [
{
"ExePath": "C:\\Program Files\\Siemens\\Automation\\Portal V17\\Bin\\Siemens.Automation.Portal.exe"
}
]
},
{
"Cmd": "Starter",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Siemens\\Step7\\S7BIN\\u7wdrfax.exe"
}
]
},
{
"Cmd": "Epl",
"Exe": [
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2.9.4\\Bin\\EPLAN.exe",
"Arguments": "/Variant:\"Electric P8\""
},
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2022.0.3\\Bin\\Eplan.exe",
"Arguments": "/Variant:\"Electric P8\""
}
]
},
{
"Cmd": "NPP",
"Exe": [
{
"ExePath": "C:\\Windows\\system32\\notepad.exe"
},
{
"ExePath": "c:\\Program Files\\Notepad++\\notepad++.exe"
}
]
},
{
"Cmd": "Epl",
"Exe": [
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2.9.4\\Bin\\EPLAN.exe",
"Arguments": "/Variant:\"Electric P8\""
},
{
"ExePath": "C:\\Program Files\\EPLAN\\Platform\\2022.0.3\\Bin\\Eplan.exe",
"Arguments": "/Variant:\"Electric P8\""
}
]
},
{
"Cmd": "TotalCmd",
"Exe": [
{
"ExePath": "C:\\Program Files\\totalcmd\\TOTALCMD.EXE"
},
{
"ExePath": "C:\\Program Files\\totalcmd\\TOTALCMD64.EXE"
},
{
"ExePath": "C:\\totalcmd\\TOTALCMD64.EXE"
},
{
"ExePath": "C:\\totalcmd\\TOTALCMD.EXE"
}
]
},
{
"Cmd": "TeXstudio",
"Exe": [
{
"ExePath": "C:\\Program Files\\texstudio\\texstudio.exe"
}
]
},
{
"Cmd": "VS",
"Exe": [
{
"ExePath": "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\devenv.exe"
}
]
},
{
"Cmd": "VsCode",
"Exe": [
{
"ExePath": "%USERPROFILE%\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe"
}
]
},
{
"Cmd": "Rdp",
"Exe": [
{
"ExePath": "%windir%\\system32\\mstsc.exe"
}
]
},
{
"Cmd": "Outlook",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\OUTLOOK.EXE"
}
]
},
{
"Cmd": "Teams",
"Exe": [
{
"ExePath": "C:\\Users\\maier_s\\AppData\\Local\\Microsoft\\Teams\\Update.exe",
"Arguments": "--processStart \"Teams.exe\""
}
]
},
{
"Cmd": "Excel",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\EXCEL.EXE"
}
]
},
{
"Cmd": "Word",
"Exe": [
{
"ExePath": "C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\WINWORD.EXE"
}
]
},
{
"Cmd": "PaintNet",
"Exe": [
{
"ExePath": "C:\\Program Files\\paint.net\\paintdotnet.exe"
}
]
},
{
"Cmd": "Gimp",
"Exe": [
{
"ExePath": "C:\\Program Files\\GIMP 2\\bin\\gimp-2.10.exe"
}
]
},
{
"Cmd": "Vnc",
"Exe": [
{
"ExePath": "C:\\Program Files\\RealVNC\\VNC Viewer\\vncviewer.exe"
},
{
"ExePath": "c:\\Users\\maier_s\\OneDrive - Fondium Group GmbH\\Documents\\Apps\\VNC-Viewer-6.20.113-Windows-64bit.exe"
}
]
},
{
"Cmd": "VncAdrBook",
"Exe": [
{
"ExePath": "C:\\Program Files\\RealVNC\\VNC Viewer\\vncaddrbook.exe"
}
]
},
{
"Cmd": "IbaAnalyzer",
"Exe": [
{
"ExePath": "C:\\Program Files\\iba\\ibaAnalyzer\\ibaAnalyzer.exe"
}
]
},
{
"Cmd": "ZtrlWeb",
"Urls": [
"http://desiaugetwf/web/?AspxAutoDetectCookieSupport=1"
]
},
{
"Cmd": "Schichtbuch",
"Urls": [
"http://10.10.1.42/SKSchichtbuchWeb/de-DE/Plugin/ShiftBook/ShiftBook/IR"
]
},
{
"Cmd": "SPS",
"Urls": [
"http://10.10.1.42/SKChangeTrackerWeb/de-DE/Plugin/ChangeTracker"
]
},
{
"Cmd": "Pl1Pls",
"Urls": [
"http://10.10.200.2/SKPL1Web/index.aspx"
]
},
{
"Cmd": "Pl1Lst",
"Urls": [
"http://desiaugetwf.fondium.org/web/Seiten/Leistungsdaten_FuG.aspx?Fkt=PL1"
]
},
{
"Cmd": "Pl2Als",
"Urls": [
"http://10.10.213.234:84/emb_1/index.html"
]
},
{
"Cmd": "Pl2Pls",
"Urls": [
"http://10.10.213.4/SKPL2Web/index.aspx"
]
},
{
"Cmd": "Pl2Lst",
"Urls": [
"http://desiaugetwf/web/Seiten/Leistungsdaten_PL2.aspx"
]
},
{
"Cmd": "Pl2Nc",
"Urls": [
"http://10.10.213.4/SKPL2Web/Seiten/Taktzeiten_PopUp.aspx"
]
},
{
"Cmd": "Pl2Key",
"Urls": [
"http://10.10.213.4/skkeymanager-pl2"
]
},
{
"Cmd": "Pl2Alg",
"Urls": [
"http://10.10.213.4/SKPL2Web/index.aspx",
"http://10.10.213.234:84/emb_1/index.html",
"http://desiaugetwf/web/Seiten/Leistungsdaten_PL2.aspx"
]
},
{
"Cmd": "Pl3Pls",
"Urls": [
"http://10.10.202.10/SKPL3Web/index.asp"
]
},
{
"Cmd": "Pl3Lst",
"Urls": [
"http://desiaugetwf.fondium.org/web/Seiten/Leistungsdaten_FuG.aspx?Fkt=PL3"
]
},
{
"Cmd": "Gitea",
"Urls": [
"http://desiaugetwf/web/?AspxAutoDetectCookieSupport=1"
]
},
{
"Cmd": "Wiki",
"Urls": [
"http://desiaugetc7-088:3001/en/home"
]
},
{
"Cmd": "Erp",
"Urls": [
"https://mingle-portal.eu1.inforcloudsuite.com/FONDIUM_prd"
]
}
],
"Folders": [
{
"Plant": "Alg",
@@ -191,12 +379,35 @@
"Description": "Eplan Projekt Ablage",
"Path": "\\\\fondium.org\\DESI$\\AUG_Abteilung\\Betriebstechnik\\EPL\\P8\\Data\\Projekte\\FSI\\"
},
{
"Plant": "PL1",
"SubPlant": "Alg",
"Description": "PL1 Backupverzeichnis",
"Path": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL1"
},
{
"Plant": "PL2",
"SubPlant": "Alg",
"Name": "PL2 Backup",
"Description": "PL2 Backupverzeichnis",
"Description": "Backupverzeichnis",
"Path": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL2"
},
{
"Plant": "PL2",
"SubPlant": "SA",
"Description": "Backupverzeichnis",
"Path": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL2\\SA"
},
{
"Plant": "PL2",
"SubPlant": "FA",
"Description": "Backupverzeichnis",
"Path": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL2\\FA"
},
{
"Plant": "PL3",
"SubPlant": "Alg",
"Description": "Backupverzeichnis",
"Path": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL3"
}
],
"TxtToClip": [
@@ -211,12 +422,18 @@
"SubPlant": "Alg",
"Description": "Eplan Projekt Ablage",
"Txt": "\\\\fondium.org\\DESI$\\AUG_Abteilung\\Betriebstechnik\\EPL\\P8\\Data\\Projekte\\FSI\\"
},
{
"Plant": "PL2",
"SubPlant": "Alg",
"Description": "PL2 Backupverzeichnis",
"Txt": "\\\\10.10.1.40\\Betriebstechnik\\Datensicherung\\1_IuR_Giesserei\\PL2"
}
]
],
"WinCC": {
"AutoStart": false,
"UpdateIntervall": 10,
"WindowsName": "",
"WindowsClassName": "#32770",
"ButtonName": "Zur Kenntnis genommen"
},
"IbaDirSync": {
"AutoStart": false,
"Source": "d:\\tmp",
"Destination": "c:\\tmp"
}
}

View File

@@ -1,23 +1,36 @@
<?xml version="1.0" encoding="utf-8" ?>
<!-- XSD manual extracted from package NLog.Schema: https://www.nuget.org/packages/NLog.Schema-->
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xsi:schemaLocation="NLog NLog.xsd"
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
internalLogFile="c:\temp\console-example-internal.log"
internalLogLevel="Info" >
throwExceptions="false">
<variable name="appName" value="FSI.BT.Tools" />
<!-- the targets to write to -->
<targets>
<!-- write logs to file -->
<target xsi:type="File" name="logfile" fileName="logs/log.log" archiveFileName ="logs/{#}_log.log" archiveNumbering ="Date" archiveEvery="Day" archiveDateFormat="yyyyMMdd"
layout="${longdate}|${level}|${message} |${all-event-properties} ${exception:format=tostring}" />
<target xsi:type="Console" name="logconsole"
layout="${longdate}|${level}|${message} |${all-event-properties} ${exception:format=tostring}" />
<target xsi:type="File"
name="logfile"
fileName="logs/${appName}.log"
archiveFileName ="logs/{#}_${appName}.log"
archiveNumbering ="Date" archiveEvery="Day"
archiveDateFormat="yyyyMMdd"/>
<target name="viewer"
xsi:type="NLogViewer"
includeSourceInfo="true"
address="udp://FDESINB5501:9999"/>
</targets>
<!-- rules to map from logger name to target -->
<rules>
<logger name="*" minlevel="Trace" writeTo="logfile,logconsole,console" />
<logger name="*"
minlevel="Trace"
writeTo="logfile,logconsole,console" />
<logger name="*"
minlevel="Debug"
writeTo="viewer" />
</rules>
</nlog>