Changed Client library
@@ -68,7 +68,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Config.xml">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
<DeveloperMode>true</DeveloperMode>
|
||||
</Client>
|
||||
<Connection>
|
||||
<ServerUrl>localhost</ServerUrl>
|
||||
<ServerUrl>Seriate.steamware.net</ServerUrl>
|
||||
<ServerPort>9000</ServerPort>
|
||||
<Id>1</Id>
|
||||
<DeleteCahceFolderOnStartup>false</DeleteCahceFolderOnStartup>
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
//public static string BASE_PATH = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\";
|
||||
public static string BROWSER_CACHE_FOLDER = BASE_PATH + "LocalStorage";
|
||||
public static string STARTUP_CONFIG_SCHEMA_PATH = BASE_PATH + "ClientValidator.xsd";
|
||||
public static string STARTUP_CONFIG_PATH = BASE_PATH + "lib\\Config.xml";
|
||||
public static string STARTUP_CONFIG_PATH = BASE_PATH + "Config.xml";
|
||||
public static string CEF_PATH = BASE_PATH + "CEF";
|
||||
public static string CEF_X86_PATH = BASE_PATH + "CEF\\Release_X86";
|
||||
public static string CEF_X64_PATH = BASE_PATH + "CEF\\Release_X64";
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<ApplicationVersion>2.0.0.%2a</ApplicationVersion>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
@@ -248,7 +248,7 @@
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.6.2">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Microsoft .NET Framework 4.6.2 %28x86 e x64%29</ProductName>
|
||||
<ProductName>Microsoft .NET Framework 4.6.2 %28x86 and x64%29</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||
|
||||
@@ -31,5 +31,4 @@ using System.Runtime.InteropServices;
|
||||
// È possibile specificare tutti i valori oppure impostare valori predefiniti per i numeri relativi alla revisione e alla build
|
||||
// usando l'asterisco '*' come illustrato di seguito:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.0.0")]
|
||||
[assembly: AssemblyVersion("2.0.*")]
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2" />
|
||||
</startup>
|
||||
</configuration>
|
||||
@@ -0,0 +1,530 @@
|
||||
using CefSharp;
|
||||
using Client.Config;
|
||||
using Client.Config.SubModels;
|
||||
using Client2020.BrowserTools.Models;
|
||||
using Client2020.BrowserTools.Models.Errors;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Client2020.BrowserTools
|
||||
{
|
||||
public class BrowserJSObject
|
||||
{
|
||||
private Form mainForm;
|
||||
private static readonly string[] _validExtensions = { ".json", ".rcp", ".tpl" };
|
||||
//private static readonly string[] _validExtensions = { "", ".txt", ".cnc", ".cn", ".cno", ".ini", ".mpf", ".spf", ".tap", ".anc", ".iso" };
|
||||
private static readonly string[] _validImages = { ".svg" };
|
||||
private static string jobPath = "";
|
||||
private static Dictionary<string, IntPtr> _editorOpened = new Dictionary<string, IntPtr>();
|
||||
public static string RECENT_FOLDER_KEY = "RECENT";
|
||||
private const string THERMO_RECIPE_PATH = @"C:\CMS\Recipes";
|
||||
private const string CMS_PATH = @"C:\CMS";
|
||||
|
||||
#region CONSTRUCTOR_METHOD
|
||||
public BrowserJSObject(Form f)
|
||||
{
|
||||
mainForm = f;
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endregion CONSTRUCTOR_METHOD
|
||||
|
||||
#region FORM_BEHAVIOUR_METHODS
|
||||
public void minimizeForm()
|
||||
{
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (mainForm.InvokeRequired)
|
||||
mainForm.Invoke((MethodInvoker)delegate ()
|
||||
{
|
||||
mainForm.WindowState = FormWindowState.Minimized;
|
||||
});
|
||||
else
|
||||
{
|
||||
mainForm.WindowState = FormWindowState.Minimized;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Maximize Main Window
|
||||
public void maximizeForm()
|
||||
{
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (mainForm.InvokeRequired)
|
||||
mainForm.Invoke((MethodInvoker)delegate ()
|
||||
{
|
||||
mainForm.WindowState = FormWindowState.Maximized;
|
||||
});
|
||||
else
|
||||
{
|
||||
mainForm.WindowState = FormWindowState.Maximized;
|
||||
}
|
||||
}
|
||||
|
||||
// Close Main Window
|
||||
public void closeForm()
|
||||
{
|
||||
//If the mainform is disposed do nothing
|
||||
if (mainForm.IsDisposed)
|
||||
return;
|
||||
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
Application.Exit();
|
||||
}
|
||||
|
||||
#endregion FORM_BEHAVIOUR_METHODS
|
||||
|
||||
#region NC_BEHAVIOUR_METHODS
|
||||
public void setNcWindowState(int val)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public int getNcWindowState()
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
public string getScreenBase64()
|
||||
{
|
||||
return "";
|
||||
}
|
||||
#endregion NC_BEHAVIOUR_METHODS
|
||||
|
||||
#region CHROMIUM_METHODS
|
||||
|
||||
// Get the Version of Chromium
|
||||
public string getChromiumVersion()
|
||||
{
|
||||
return Cef.ChromiumVersion + " (" + Application.ProductVersion + ")";
|
||||
}
|
||||
|
||||
#endregion CHROMIUM_METHODS
|
||||
|
||||
#region STEP_METHODS
|
||||
|
||||
// Get the ID of STEP Client
|
||||
public int getClientID()
|
||||
{
|
||||
return Config.ConnectionConfig.Id;
|
||||
}
|
||||
|
||||
public void forceStepFocus()
|
||||
{
|
||||
}
|
||||
|
||||
public void forceNcFocus()
|
||||
{
|
||||
}
|
||||
|
||||
public void forceProdFocus()
|
||||
{
|
||||
}
|
||||
|
||||
// Get the option of virtual Keyb configured
|
||||
private bool isVirtualKeybConfigured()
|
||||
{
|
||||
return Config.ClientConfig.ShowVirtualKeyboard;
|
||||
}
|
||||
|
||||
// Get the option of virtual Keyb configured
|
||||
private bool isHMIenabled()
|
||||
{
|
||||
return Config.VendorHmiConfig.Enabled;
|
||||
}
|
||||
|
||||
// Get the option of PROD Enabled
|
||||
private bool isPRODenabled()
|
||||
{
|
||||
return Config.ProdSoftwareConfig.Enabled;
|
||||
}
|
||||
|
||||
// Get the SCM option
|
||||
private bool isSCMVisualStyle()
|
||||
{
|
||||
return Config.ClientConfig.IsSCM;
|
||||
}
|
||||
|
||||
private string openExternalBrowser(string proc)
|
||||
{
|
||||
Process.Start(proc);
|
||||
return "";
|
||||
}
|
||||
#endregion STEP_METHODS
|
||||
|
||||
#region PROCESSES_METHODS
|
||||
|
||||
// Read all configured processes
|
||||
public string getConfiguredProcesses()
|
||||
{
|
||||
return JsonConvert.SerializeObject(Config.ExtSoftwaresConfig.Where(X => X.inMainMenuBar == false));
|
||||
}
|
||||
|
||||
// Read all configured processes in main menu
|
||||
public string getConfiguredProcessesInMainMenu()
|
||||
{
|
||||
return JsonConvert.SerializeObject(Config.ExtSoftwaresConfig.Where(X => X.inMainMenuBar == true));
|
||||
}
|
||||
|
||||
// Start a new process
|
||||
public void startNewProcess(string proc)
|
||||
{
|
||||
Thread t = new Thread(new ParameterizedThreadStart(OpenNew));
|
||||
t.Start(proc);
|
||||
}
|
||||
|
||||
// Open the last window or Start a new process
|
||||
public void openOrStartProcess(string proc)
|
||||
{
|
||||
Thread t = new Thread(new ParameterizedThreadStart(OpenStartNew));
|
||||
t.Start(proc);
|
||||
}
|
||||
|
||||
// Function used in Thread
|
||||
private void OpenStartNew(object id)
|
||||
{
|
||||
Software sft = Config.ExtSoftwaresConfig.FirstOrDefault(X => X.id == (string)id);
|
||||
|
||||
if (sft != null && File.Exists(sft.path))
|
||||
{
|
||||
Process[] p = Process.GetProcessesByName(Path.GetFileNameWithoutExtension(sft.path)).OrderByDescending(X => X.StartTime).ToArray();
|
||||
|
||||
if (p.Count() > 0 && p[0].MainWindowHandle != IntPtr.Zero)
|
||||
NcWindow.ForceExtFocus(p[0].MainWindowHandle, 0, 0, 0, 0);
|
||||
else
|
||||
{
|
||||
ProcessStartInfo PS = new ProcessStartInfo(sft.path, sft.arguments);
|
||||
PS.WorkingDirectory = new FileInfo(sft.path).Directory.FullName;
|
||||
Process.Start(PS);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Function used in Thread
|
||||
private void OpenNew(object id)
|
||||
{
|
||||
Software sft = Config.ExtSoftwaresConfig.FirstOrDefault(X => X.id == (string)id);
|
||||
if (sft != null)
|
||||
{
|
||||
ProcessStartInfo PS = new ProcessStartInfo(sft.path, sft.arguments);
|
||||
PS.WorkingDirectory = new FileInfo(sft.path).Directory.FullName;
|
||||
Process.Start(PS);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion PROCESSES_METHODS
|
||||
|
||||
|
||||
#region FILESYSTEM_METHODS
|
||||
public string getOSdriveList()
|
||||
{
|
||||
List<Drive> drivelist = new List<Drive>();
|
||||
|
||||
if (Directory.Exists(THERMO_RECIPE_PATH))
|
||||
{
|
||||
drivelist.Add(new Drive()
|
||||
{
|
||||
Name = ElaborateName("Recipes", "", DriveType.Unknown),
|
||||
Path = THERMO_RECIPE_PATH + "\\",
|
||||
Type = "SPFO"
|
||||
});
|
||||
}
|
||||
|
||||
return JsonConvert.SerializeObject(drivelist);
|
||||
}
|
||||
|
||||
// Read all files in directory
|
||||
public string getFileList(string p)
|
||||
{
|
||||
List<FileModel> filelist = new List<FileModel>();
|
||||
|
||||
|
||||
if (p != RECENT_FOLDER_KEY && !Directory.Exists(p))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("file_not_exists")));
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (p == RECENT_FOLDER_KEY)
|
||||
{
|
||||
filelist = new List<FileModel>();
|
||||
}
|
||||
else
|
||||
{
|
||||
// Add directories
|
||||
foreach (string item in Directory.GetDirectories(p))
|
||||
{
|
||||
filelist.Add(new FileModel
|
||||
{
|
||||
Name = Path.GetFileName(item),
|
||||
AbsolutePath = Path.GetFullPath(item),
|
||||
Path = Path.GetFullPath(item),
|
||||
IsDirectory = true,
|
||||
FileExist = true,
|
||||
IsMain = false
|
||||
});
|
||||
}
|
||||
|
||||
// Add files
|
||||
foreach (string item in Directory.GetFiles(p))
|
||||
{
|
||||
if (_validExtensions.Contains(Path.GetExtension(item).ToLower()))
|
||||
{
|
||||
bool isJob = false;
|
||||
filelist.Add(new FileModel
|
||||
{
|
||||
Name = Path.GetFileName(item),
|
||||
AbsolutePath = Path.GetFullPath(item),
|
||||
Path = Path.GetFullPath(item),
|
||||
IsDirectory = false,
|
||||
IsJob = isJob,
|
||||
IsMain = false,
|
||||
FileExist = true
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
|
||||
return (JsonConvert.SerializeObject(filelist));
|
||||
}
|
||||
|
||||
// Read info of a file
|
||||
public string getProgramInfo(string p)
|
||||
{
|
||||
string imagePath, imageDirectory;
|
||||
|
||||
if (!File.Exists(p))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new InfoFile()));
|
||||
}
|
||||
|
||||
FileInfo f = new FileInfo(p);
|
||||
InfoFile file = new InfoFile
|
||||
{
|
||||
Name = f.Name,
|
||||
CreationDate = f.CreationTime,
|
||||
LastModDate = f.LastAccessTime,
|
||||
AbsolutePath = p,
|
||||
CanEdit = !f.IsReadOnly
|
||||
};
|
||||
|
||||
imagePath = Path.GetFileNameWithoutExtension(p);
|
||||
imageDirectory = Path.GetDirectoryName(p);
|
||||
|
||||
file.SheetX = "";
|
||||
file.SheetY = "";
|
||||
file.SheetZ = "";
|
||||
file.Annotation = "";
|
||||
|
||||
try
|
||||
{
|
||||
dynamic content = JsonConvert.DeserializeObject(File.ReadAllText(p));
|
||||
|
||||
if (content != null && content.RecipeParameters != null)
|
||||
{
|
||||
if (content.RecipeParameters.general_sizes_sheet_dim_x != null)
|
||||
file.SheetX = content.RecipeParameters.general_sizes_sheet_dim_x;
|
||||
if (content.RecipeParameters.general_sizes_sheet_dim_y != null)
|
||||
file.SheetY = content.RecipeParameters.general_sizes_sheet_dim_y;
|
||||
if (content.RecipeParameters.general_sizes_sheet_thickness != null)
|
||||
file.SheetZ = content.RecipeParameters.general_sizes_sheet_thickness;
|
||||
if (content.recipeNotes != null)
|
||||
file.Annotation = content.recipeNotes;
|
||||
}
|
||||
|
||||
foreach (string ext in _validImages)
|
||||
{
|
||||
if (File.Exists(imageDirectory + "/" + imagePath + ext))
|
||||
{
|
||||
if (ext.ToLower().Equals(".svg"))
|
||||
file.PreviewBase64 = File.ReadAllText(imageDirectory + "/" + imagePath + ext);
|
||||
else
|
||||
file.PreviewBase64 = "data:image/" + ext + ";base64," + Convert.ToBase64String(File.ReadAllBytes(imageDirectory + "/" + imagePath + ext));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
}
|
||||
|
||||
return (JsonConvert.SerializeObject(file));
|
||||
}
|
||||
|
||||
|
||||
public string duplicateRecipe(string p1, string p2)
|
||||
{
|
||||
string oldFile = CMS_PATH + "\\" + p1 + ".rcp";
|
||||
string newFile = CMS_PATH + "\\" + p2 + ".rcp";
|
||||
string oldImage = CMS_PATH + "\\" + p1 + ".svg";
|
||||
string newImage = CMS_PATH + "\\" + p2 + ".svg";
|
||||
if (!File.Exists(oldFile))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("file_not_found")));
|
||||
}
|
||||
if (File.Exists(newFile))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("file_already_exists")));
|
||||
}
|
||||
try
|
||||
{
|
||||
File.Copy(oldFile, newFile, true);
|
||||
if (File.Exists(oldImage))
|
||||
{
|
||||
File.Copy(oldImage, newImage, true);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return(JsonConvert.SerializeObject(new ErrorContainer("cannot_copy_file")));
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public string getAllRecipeDirectories()
|
||||
{
|
||||
List<string> dirs = this.DirSearch(THERMO_RECIPE_PATH);
|
||||
for (int i = 0; i < dirs.Count; i++)
|
||||
{
|
||||
dirs[i] = dirs[i].Remove(0, CMS_PATH.Length + 1);
|
||||
}
|
||||
|
||||
return(JsonConvert.SerializeObject(dirs));
|
||||
}
|
||||
|
||||
public string deleteFile(string p)
|
||||
{
|
||||
FileAttributes attr = File.GetAttributes(p);
|
||||
if (!File.Exists(p) || attr.HasFlag(FileAttributes.Directory))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("file_not_found")));
|
||||
}
|
||||
if (attr.HasFlag(FileAttributes.ReadOnly))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("file_not_editable")));
|
||||
}
|
||||
try
|
||||
{
|
||||
File.Delete(p);
|
||||
string images = Path.ChangeExtension(p, "svg");
|
||||
if (File.Exists(images))
|
||||
{
|
||||
File.Delete(images);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("cannot_delete_file")));
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public string deleteFolder(string p)
|
||||
{
|
||||
|
||||
FileAttributes attr = File.GetAttributes(p);
|
||||
if (!Directory.Exists(p) || !attr.HasFlag(FileAttributes.Directory))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("directory_not_found")));
|
||||
}
|
||||
if (attr.HasFlag(FileAttributes.ReadOnly))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("directory_not_editable")));
|
||||
}
|
||||
try
|
||||
{
|
||||
Directory.Delete(p, true);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("cannot_delete_directory")));
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public string createFolder(string path)
|
||||
{
|
||||
if (Directory.Exists(path))
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("directory_already_exists")));
|
||||
}
|
||||
try
|
||||
{
|
||||
Directory.CreateDirectory(path);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return (JsonConvert.SerializeObject(new ErrorContainer("cannot_delete_directory")));
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
// Private functions
|
||||
private string ElaborateType(DriveType type)
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case DriveType.Fixed: return "HD";
|
||||
case DriveType.Removable: return "USB";
|
||||
case DriveType.Network: return "NTW";
|
||||
}
|
||||
return "SPFO";
|
||||
}
|
||||
private string ElaborateName(string name, string letter, DriveType type)
|
||||
{
|
||||
var retName = "";
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(name))
|
||||
retName = name;
|
||||
else
|
||||
{
|
||||
switch (type)
|
||||
{
|
||||
case DriveType.Fixed: retName = "Hard_Disk"; break;
|
||||
case DriveType.Removable: retName = "Usb_Disk"; break;
|
||||
case DriveType.Network: retName = "Netword_Disk"; break;
|
||||
default: retName = "Undefined"; break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(letter))
|
||||
retName = retName + " (" + letter + ")";
|
||||
|
||||
return retName;
|
||||
}
|
||||
|
||||
|
||||
private List<String> DirSearch(string sDir)
|
||||
{
|
||||
List<String> files = new List<String>();
|
||||
try
|
||||
{
|
||||
files.Add(sDir);
|
||||
foreach (string d in Directory.GetDirectories(sDir))
|
||||
{
|
||||
files.AddRange(DirSearch(d));
|
||||
}
|
||||
}
|
||||
catch (System.Exception excpt)
|
||||
{
|
||||
MessageBox.Show(excpt.Message);
|
||||
}
|
||||
|
||||
return files;
|
||||
}
|
||||
|
||||
#endregion FILESYSTEM_METHODS
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
using System;
|
||||
|
||||
namespace Client2020.BrowserTools.Models
|
||||
{
|
||||
public class Drive
|
||||
{
|
||||
public String Name;
|
||||
public String Path;
|
||||
public String Type;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
|
||||
namespace Client2020.BrowserTools.Models.Errors
|
||||
{
|
||||
public class ErrorContainer
|
||||
{
|
||||
public String error;
|
||||
|
||||
public ErrorContainer(String Err)
|
||||
{
|
||||
this.error = Err;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
namespace Client2020.BrowserTools.Models
|
||||
{
|
||||
public class FileModel
|
||||
{
|
||||
public string Name;
|
||||
public string AbsolutePath;
|
||||
public string Path;
|
||||
public bool IsDirectory;
|
||||
public bool IsJob;
|
||||
public bool IsMain;
|
||||
public bool FileExist;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Models
|
||||
{
|
||||
public class InfoFile
|
||||
{
|
||||
public String Name;
|
||||
public String AbsolutePath;
|
||||
public DateTime CreationDate;
|
||||
public DateTime LastModDate;
|
||||
public String SheetX;
|
||||
public String SheetY;
|
||||
public String SheetZ;
|
||||
public String Annotation;
|
||||
|
||||
public Boolean CanEdit;
|
||||
public string PreviewBase64;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
using Client2020.BrowserTools.Metadata;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Models
|
||||
{
|
||||
public class JobToStep
|
||||
{
|
||||
public string name;
|
||||
public DateTime lastEditTimestamp;
|
||||
public string isoMainProgram;
|
||||
public Metas metadata;
|
||||
public List<PPContainer> partPrograms;
|
||||
|
||||
public JobToStep()
|
||||
{
|
||||
metadata = new Metas();
|
||||
partPrograms = new List<PPContainer>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Metadata
|
||||
{
|
||||
public class CustomParam
|
||||
{
|
||||
public string name;
|
||||
public string type;
|
||||
public List<string> selectionList;
|
||||
public int value;
|
||||
|
||||
public CustomParam()
|
||||
{
|
||||
selectionList = new List<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Metadata
|
||||
{
|
||||
public class GenericsParam
|
||||
{
|
||||
public List<ImageParam> images;
|
||||
public string description;
|
||||
public TimeSpan executionTime;
|
||||
|
||||
public GenericsParam()
|
||||
{
|
||||
images = new List<ImageParam>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace Client2020.BrowserTools.Metadata
|
||||
{
|
||||
public class ImageParam
|
||||
{
|
||||
public string name;
|
||||
public string base64;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Metadata
|
||||
{
|
||||
public class Metas
|
||||
{
|
||||
public GenericsParam generics;
|
||||
public List<int> tools;
|
||||
public List<CustomParam> customs;
|
||||
|
||||
public Metas()
|
||||
{
|
||||
generics = new GenericsParam();
|
||||
tools = new List<int>();
|
||||
customs = new List<CustomParam>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using System;
|
||||
|
||||
namespace Client2020.BrowserTools.Metadata
|
||||
{
|
||||
public class PPContainer
|
||||
{
|
||||
public String name;
|
||||
|
||||
public PPContainer(String name)
|
||||
{
|
||||
this.name = name;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
using Client2020.BrowserTools.Metadata;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Client2020.BrowserTools.Models
|
||||
{
|
||||
public class MetadataToFile
|
||||
{
|
||||
public string description;
|
||||
public TimeSpan executionTime;
|
||||
public List<int> tools;
|
||||
public List<CustomParam> customs;
|
||||
|
||||
public MetadataToFile()
|
||||
{
|
||||
tools = new List<int>();
|
||||
customs = new List<CustomParam>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using CefSharp;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
internal class CMSContextBrowser : IContextMenuHandler
|
||||
{
|
||||
public void OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
|
||||
{
|
||||
//throw new System.NotImplementedException();
|
||||
}
|
||||
|
||||
public bool OnContextMenuCommand(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
public void OnContextMenuDismissed(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame)
|
||||
{
|
||||
}
|
||||
|
||||
public bool RunContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using CefSharp;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
class CMSRenderBrowser : IRenderProcessMessageHandler
|
||||
{
|
||||
public void OnFocusedNodeChanged(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IDomNode node)
|
||||
{
|
||||
if (node != null)
|
||||
{
|
||||
string NodeName = node.TagName.ToLower();
|
||||
string dom = node["type"];
|
||||
|
||||
//Filter if this node is an INPUT Node
|
||||
if (NodeName != null && NodeName.Equals("input"))
|
||||
{
|
||||
//Filter if the node Type is TEXT or PASSWORD
|
||||
if (dom == null || (dom.ToLower().Equals("text") || dom.ToLower().Equals("password")))
|
||||
NcWindow.openVirtualKeyboard(true, false);
|
||||
}
|
||||
//Filter if this node is TEXTAREA Node
|
||||
else if (NodeName != null && NodeName.Equals("textarea"))
|
||||
NcWindow.openVirtualKeyboard(true, false);
|
||||
else
|
||||
NcWindow.closeVirtualKeyboard();
|
||||
}
|
||||
else
|
||||
NcWindow.closeVirtualKeyboard();
|
||||
|
||||
}
|
||||
|
||||
public void OnContextCreated(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame)
|
||||
{
|
||||
}
|
||||
|
||||
public void OnContextReleased(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public void OnUncaughtException(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, JavascriptException exception)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,192 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props" Condition="Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props')" />
|
||||
<Import Project="..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props" Condition="Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props')" />
|
||||
<Import Project="..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props" Condition="Exists('..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props')" />
|
||||
<Import Project="..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props" Condition="Exists('..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{0780047F-12E4-4FCC-9748-6B23F0FD3711}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>Client2020</RootNamespace>
|
||||
<AssemblyName>Active_Client</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<StartupObject>Client2020.Program</StartupObject>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
|
||||
<OutputPath>..\Thermo.Active\bin\Client2020\x64\</OutputPath>
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup />
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>Resources\ACTIVE_ICONA.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
|
||||
<OutputPath>..\Thermo.Active\bin\Client2020_Debug\x64\</OutputPath>
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Management.Instrumentation" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="BrowserTools\BrowserJSObject.cs" />
|
||||
<Compile Include="BrowserTools\Models\Drive.cs" />
|
||||
<Compile Include="BrowserTools\Models\Errors\ErrorContainer.cs" />
|
||||
<Compile Include="BrowserTools\Models\File.cs" />
|
||||
<Compile Include="BrowserTools\Models\InfoFile.cs" />
|
||||
<Compile Include="BrowserTools\Models\JobToStep.cs" />
|
||||
<Compile Include="BrowserTools\Models\MetadataToFile.cs" />
|
||||
<Compile Include="BrowserTools\Models\Metadata\CustomParam.cs" />
|
||||
<Compile Include="BrowserTools\Models\Metadata\GenericsParam.cs" />
|
||||
<Compile Include="BrowserTools\Models\Metadata\ImageParam.cs" />
|
||||
<Compile Include="BrowserTools\Models\Metadata\Metas.cs" />
|
||||
<Compile Include="BrowserTools\Models\Metadata\PPContainer.cs" />
|
||||
<Compile Include="CMSContextBrowser.cs" />
|
||||
<Compile Include="CMSRenderBrowser.cs" />
|
||||
<Compile Include="LoadingForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="LoadingForm.Designer.cs">
|
||||
<DependentUpon>LoadingForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="MainForm.Designer.cs">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="NcWindow.cs" />
|
||||
<Compile Include="OpeningForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="OpeningForm.Designer.cs">
|
||||
<DependentUpon>OpeningForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="LoadingForm.resx">
|
||||
<DependentUpon>LoadingForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="MainForm.resx">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="OpeningForm.resx">
|
||||
<DependentUpon>OpeningForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<None Include="app.manifest" />
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Client.Config\Client.Config.csproj">
|
||||
<Project>{205a6ade-fb5a-45cb-9c51-9817e7bb8939}</Project>
|
||||
<Name>Client.Config</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\Client.Utils\Client.Utils.csproj">
|
||||
<Project>{34434b22-d546-4a5c-b575-49720c77643a}</Project>
|
||||
<Name>Client.Utils</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\ACTIVE_ICONA.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\ACTIVE_ICONA.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\CM_ACTIVE_LOGO.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\CM_ACTIVE_LOGO_INVERTED.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\CMS_LOGO.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\MAESTRO_ACTIVE_LOGO.jpg" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SCM_MAESTRO_ACTIVE_ICONA.ico" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\SinumerikHmi.ico" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props'))" />
|
||||
<Error Condition="!Exists('..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets" Condition="Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets')" />
|
||||
<Import Project="..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets" Condition="Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets')" />
|
||||
</Project>
|
||||
@@ -0,0 +1,158 @@
|
||||
namespace Client2020
|
||||
{
|
||||
partial class LoadingForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(LoadingForm));
|
||||
this.StatusLBL = new System.Windows.Forms.Label();
|
||||
this.ErrorLBL = new System.Windows.Forms.Label();
|
||||
this.CloseLabel = new System.Windows.Forms.Label();
|
||||
this.LogoSCM = new System.Windows.Forms.PictureBox();
|
||||
this.VersionLBL = new System.Windows.Forms.Label();
|
||||
this.LogoCMS = new System.Windows.Forms.PictureBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoSCM)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoCMS)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// StatusLBL
|
||||
//
|
||||
this.StatusLBL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.StatusLBL.BackColor = System.Drawing.Color.White;
|
||||
this.StatusLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.749999F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.StatusLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(75)))), ((int)(((byte)(75)))), ((int)(((byte)(75)))));
|
||||
this.StatusLBL.Location = new System.Drawing.Point(0, 384);
|
||||
this.StatusLBL.Name = "StatusLBL";
|
||||
this.StatusLBL.Size = new System.Drawing.Size(502, 34);
|
||||
this.StatusLBL.TabIndex = 5;
|
||||
this.StatusLBL.Text = "...";
|
||||
this.StatusLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// ErrorLBL
|
||||
//
|
||||
this.ErrorLBL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ErrorLBL.BackColor = System.Drawing.Color.White;
|
||||
this.ErrorLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.749999F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.ErrorLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
|
||||
this.ErrorLBL.Location = new System.Drawing.Point(501, 384);
|
||||
this.ErrorLBL.Name = "ErrorLBL";
|
||||
this.ErrorLBL.Size = new System.Drawing.Size(468, 34);
|
||||
this.ErrorLBL.TabIndex = 7;
|
||||
this.ErrorLBL.Text = "...";
|
||||
this.ErrorLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// CloseLabel
|
||||
//
|
||||
this.CloseLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CloseLabel.BackColor = System.Drawing.Color.White;
|
||||
this.CloseLabel.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.CloseLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.CloseLabel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(43)))), ((int)(((byte)(91)))));
|
||||
this.CloseLabel.Location = new System.Drawing.Point(922, 0);
|
||||
this.CloseLabel.Margin = new System.Windows.Forms.Padding(3, 0, 2, 0);
|
||||
this.CloseLabel.Name = "CloseLabel";
|
||||
this.CloseLabel.Padding = new System.Windows.Forms.Padding(0, 0, 5, 0);
|
||||
this.CloseLabel.Size = new System.Drawing.Size(47, 31);
|
||||
this.CloseLabel.TabIndex = 3;
|
||||
this.CloseLabel.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
//
|
||||
// LogoSCM
|
||||
//
|
||||
this.LogoSCM.BackColor = System.Drawing.Color.White;
|
||||
this.LogoSCM.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
|
||||
this.LogoSCM.Image = global::Client2020.Properties.Resources.MAESTRO_ACTIVE_LOGO;
|
||||
this.LogoSCM.Location = new System.Drawing.Point(0, 0);
|
||||
this.LogoSCM.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.LogoSCM.Name = "LogoSCM";
|
||||
this.LogoSCM.Size = new System.Drawing.Size(969, 400);
|
||||
this.LogoSCM.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.LogoSCM.TabIndex = 8;
|
||||
this.LogoSCM.TabStop = false;
|
||||
this.LogoSCM.Visible = false;
|
||||
//
|
||||
// VersionLBL
|
||||
//
|
||||
this.VersionLBL.BackColor = System.Drawing.Color.White;
|
||||
this.VersionLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, System.Drawing.FontStyle.Bold);
|
||||
this.VersionLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(75)))), ((int)(((byte)(75)))), ((int)(((byte)(75)))));
|
||||
this.VersionLBL.Location = new System.Drawing.Point(0, 0);
|
||||
this.VersionLBL.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.VersionLBL.Name = "VersionLBL";
|
||||
this.VersionLBL.Size = new System.Drawing.Size(929, 31);
|
||||
this.VersionLBL.TabIndex = 0;
|
||||
this.VersionLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// LogoCMS
|
||||
//
|
||||
this.LogoCMS.BackColor = System.Drawing.Color.White;
|
||||
this.LogoCMS.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
|
||||
this.LogoCMS.Image = global::Client2020.Properties.Resources.CM_ACTIVE_LOGO_INVERTED;
|
||||
this.LogoCMS.Location = new System.Drawing.Point(0, 31);
|
||||
this.LogoCMS.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.LogoCMS.Name = "LogoCMS";
|
||||
this.LogoCMS.Size = new System.Drawing.Size(969, 369);
|
||||
this.LogoCMS.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.LogoCMS.TabIndex = 6;
|
||||
this.LogoCMS.TabStop = false;
|
||||
this.LogoCMS.Visible = false;
|
||||
//
|
||||
// LoadingForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(969, 418);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.StatusLBL);
|
||||
this.Controls.Add(this.VersionLBL);
|
||||
this.Controls.Add(this.CloseLabel);
|
||||
this.Controls.Add(this.ErrorLBL);
|
||||
this.Controls.Add(this.LogoCMS);
|
||||
this.Controls.Add(this.LogoSCM);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "LoadingForm";
|
||||
this.Padding = new System.Windows.Forms.Padding(0, 60, 0, 0);
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
|
||||
this.Text = "Loading Active Client";
|
||||
this.TopMost = true;
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoSCM)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoCMS)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.Label StatusLBL;
|
||||
private System.Windows.Forms.Label ErrorLBL;
|
||||
private System.Windows.Forms.Label CloseLabel;
|
||||
private System.Windows.Forms.PictureBox LogoSCM;
|
||||
private System.Windows.Forms.Label VersionLBL;
|
||||
private System.Windows.Forms.PictureBox LogoCMS;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
using Client.Config;
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
public partial class LoadingForm : Form
|
||||
{
|
||||
|
||||
//Constructor
|
||||
public LoadingForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
if (Config.ClientConfig.IsSCM)
|
||||
{
|
||||
LogoCMS.Visible = false;
|
||||
LogoSCM.Visible = true;
|
||||
this.Icon = Client2020.Properties.Resources.MAESTRO_ACTIVE_ICON;
|
||||
}
|
||||
else
|
||||
{
|
||||
LogoCMS.Visible = true;
|
||||
LogoSCM.Visible = false;
|
||||
}
|
||||
|
||||
//Set window Position
|
||||
this.Location = new Point((Screen.PrimaryScreen.Bounds.Width / 2) - (this.Width / 2), (Screen.PrimaryScreen.Bounds.Height / 2) - (this.Height / 2));
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Show & Set the status
|
||||
public void Show(String status)
|
||||
{
|
||||
this.Show();
|
||||
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (this.InvokeRequired)
|
||||
{
|
||||
this.Invoke((MethodInvoker)delegate () { StatusLBL.Text = status; });
|
||||
}
|
||||
else
|
||||
{
|
||||
StatusLBL.Text = status;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
namespace Client2020
|
||||
{
|
||||
partial class MainForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1920, 1080);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "MainForm";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Active Client 2.0";
|
||||
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,86 @@
|
||||
using CefSharp;
|
||||
using CefSharp.WinForms;
|
||||
using Client.Config;
|
||||
using Client.Utils;
|
||||
using Client2020.BrowserTools;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
public partial class MainForm : Form
|
||||
{
|
||||
ChromiumWebBrowser browser;
|
||||
public MainForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
//Setup the Icon
|
||||
if (Config.ClientConfig.IsSCM)
|
||||
this.Icon = Properties.Resources.MAESTRO_ACTIVE_ICON;
|
||||
|
||||
//Start the browser
|
||||
browser = new ChromiumWebBrowser(Config.ConnectionConfig.StartingUrl);
|
||||
this.Controls.Add(browser);
|
||||
|
||||
//Setup the Object Custom
|
||||
browser.JavascriptObjectRepository.Register(Constants.BROWSER_JS_OBJ_NAME, new BrowserJSObject(this), isAsync: false, options: BindingOptions.DefaultBinder);
|
||||
|
||||
//Setup the Handlers
|
||||
browser.RenderProcessMessageHandler = new CMSRenderBrowser();
|
||||
browser.MenuHandler = new CMSContextBrowser();
|
||||
|
||||
//Setu the NC behaviour
|
||||
NcWindow.mainFrm = this;
|
||||
NcWindow.StartStepFollowing(this.Handle);
|
||||
}
|
||||
|
||||
|
||||
public void keyPressedHandler(bool altPressed, bool ctrlPressed, bool shiftPressed, int key)
|
||||
{
|
||||
//Work only if is a Developer mode
|
||||
if (Config.ClientConfig.DeveloperMode && altPressed)
|
||||
{
|
||||
if (key == (int)Keys.F5)
|
||||
{
|
||||
browser.Reload(true);
|
||||
}
|
||||
|
||||
if (key == (int)Keys.F12)
|
||||
browser.ShowDevTools();
|
||||
|
||||
|
||||
if (key == (int)Keys.F10)
|
||||
ShowPopup("chrome://gpu/");
|
||||
|
||||
if (key == (int)Keys.F11)
|
||||
ShowPopup("chrome://version/");
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//Show Chrome Window
|
||||
private void ShowPopup(string url)
|
||||
{
|
||||
int w = 1600, h = 800;
|
||||
|
||||
Form frm = new Form();
|
||||
frm.Controls.Add(new ChromiumWebBrowser(url));
|
||||
frm.Height = h;
|
||||
frm.Width = w;
|
||||
frm.StartPosition = FormStartPosition.CenterScreen;
|
||||
frm.ShowDialog();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,162 @@
|
||||
namespace Client2020
|
||||
{
|
||||
partial class OpeningForm
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(OpeningForm));
|
||||
this.StatusLBL = new System.Windows.Forms.Label();
|
||||
this.ErrorLBL = new System.Windows.Forms.Label();
|
||||
this.LogoCMS = new System.Windows.Forms.PictureBox();
|
||||
this.CloseLabel = new System.Windows.Forms.Label();
|
||||
this.LogoSCM = new System.Windows.Forms.PictureBox();
|
||||
this.VersionLBL = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoCMS)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoSCM)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// StatusLBL
|
||||
//
|
||||
this.StatusLBL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.StatusLBL.BackColor = System.Drawing.Color.White;
|
||||
this.StatusLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.749999F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.StatusLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(75)))), ((int)(((byte)(75)))), ((int)(((byte)(75)))));
|
||||
this.StatusLBL.Location = new System.Drawing.Point(0, 384);
|
||||
this.StatusLBL.Name = "StatusLBL";
|
||||
this.StatusLBL.Size = new System.Drawing.Size(502, 34);
|
||||
this.StatusLBL.TabIndex = 5;
|
||||
this.StatusLBL.Text = "...";
|
||||
this.StatusLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// ErrorLBL
|
||||
//
|
||||
this.ErrorLBL.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ErrorLBL.BackColor = System.Drawing.Color.White;
|
||||
this.ErrorLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.749999F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.ErrorLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))));
|
||||
this.ErrorLBL.Location = new System.Drawing.Point(501, 384);
|
||||
this.ErrorLBL.Name = "ErrorLBL";
|
||||
this.ErrorLBL.Size = new System.Drawing.Size(468, 34);
|
||||
this.ErrorLBL.TabIndex = 7;
|
||||
this.ErrorLBL.Text = "...";
|
||||
this.ErrorLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// LogoCMS
|
||||
//
|
||||
this.LogoCMS.BackColor = System.Drawing.Color.White;
|
||||
this.LogoCMS.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
|
||||
this.LogoCMS.Image = global::Client2020.Properties.Resources.CM_ACTIVE_LOGO_INVERTED;
|
||||
this.LogoCMS.Location = new System.Drawing.Point(0, 31);
|
||||
this.LogoCMS.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.LogoCMS.Name = "LogoCMS";
|
||||
this.LogoCMS.Size = new System.Drawing.Size(969, 369);
|
||||
this.LogoCMS.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.LogoCMS.TabIndex = 6;
|
||||
this.LogoCMS.TabStop = false;
|
||||
this.LogoCMS.Visible = false;
|
||||
//
|
||||
// CloseLabel
|
||||
//
|
||||
this.CloseLabel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CloseLabel.BackColor = System.Drawing.Color.White;
|
||||
this.CloseLabel.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.CloseLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 20.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.CloseLabel.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(43)))), ((int)(((byte)(91)))));
|
||||
this.CloseLabel.Location = new System.Drawing.Point(922, 0);
|
||||
this.CloseLabel.Margin = new System.Windows.Forms.Padding(3, 0, 2, 0);
|
||||
this.CloseLabel.Name = "CloseLabel";
|
||||
this.CloseLabel.Padding = new System.Windows.Forms.Padding(0, 0, 5, 0);
|
||||
this.CloseLabel.Size = new System.Drawing.Size(47, 31);
|
||||
this.CloseLabel.TabIndex = 3;
|
||||
this.CloseLabel.Text = "X";
|
||||
this.CloseLabel.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
|
||||
this.CloseLabel.Click += new System.EventHandler(this.CloseLabel_Click);
|
||||
this.CloseLabel.MouseClick += new System.Windows.Forms.MouseEventHandler(this.CloseLabel_MouseClick);
|
||||
//
|
||||
// LogoSCM
|
||||
//
|
||||
this.LogoSCM.BackColor = System.Drawing.Color.White;
|
||||
this.LogoSCM.BackgroundImageLayout = System.Windows.Forms.ImageLayout.None;
|
||||
this.LogoSCM.Image = global::Client2020.Properties.Resources.MAESTRO_ACTIVE_LOGO;
|
||||
this.LogoSCM.Location = new System.Drawing.Point(0, 0);
|
||||
this.LogoSCM.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.LogoSCM.Name = "LogoSCM";
|
||||
this.LogoSCM.Size = new System.Drawing.Size(969, 400);
|
||||
this.LogoSCM.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.LogoSCM.TabIndex = 8;
|
||||
this.LogoSCM.TabStop = false;
|
||||
this.LogoSCM.Visible = false;
|
||||
//
|
||||
// VersionLBL
|
||||
//
|
||||
this.VersionLBL.BackColor = System.Drawing.Color.White;
|
||||
this.VersionLBL.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, System.Drawing.FontStyle.Bold);
|
||||
this.VersionLBL.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(75)))), ((int)(((byte)(75)))), ((int)(((byte)(75)))));
|
||||
this.VersionLBL.Location = new System.Drawing.Point(0, 0);
|
||||
this.VersionLBL.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.VersionLBL.Name = "VersionLBL";
|
||||
this.VersionLBL.Size = new System.Drawing.Size(929, 31);
|
||||
this.VersionLBL.TabIndex = 0;
|
||||
this.VersionLBL.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// OpeningForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(969, 418);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.StatusLBL);
|
||||
this.Controls.Add(this.VersionLBL);
|
||||
this.Controls.Add(this.CloseLabel);
|
||||
this.Controls.Add(this.ErrorLBL);
|
||||
this.Controls.Add(this.LogoCMS);
|
||||
this.Controls.Add(this.LogoSCM);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "OpeningForm";
|
||||
this.Padding = new System.Windows.Forms.Padding(0, 60, 0, 0);
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
|
||||
this.Text = "Loading Active Client";
|
||||
this.TopMost = true;
|
||||
this.Load += new System.EventHandler(this.LoadingForm_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoCMS)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.LogoSCM)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.Label StatusLBL;
|
||||
private System.Windows.Forms.Label ErrorLBL;
|
||||
private System.Windows.Forms.PictureBox LogoCMS;
|
||||
private System.Windows.Forms.Label CloseLabel;
|
||||
private System.Windows.Forms.PictureBox LogoSCM;
|
||||
private System.Windows.Forms.Label VersionLBL;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,347 @@
|
||||
using Client.Config;
|
||||
using Client.Config.SubModels;
|
||||
using Client.Utils;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
public partial class OpeningForm : Form
|
||||
{
|
||||
public const int TimerTest = 500;
|
||||
private HttpWebRequest ConnTestRequest;
|
||||
private HttpWebResponse ConnTestResponse;
|
||||
private String ConnTestError;
|
||||
private Task ConnTask;
|
||||
private ushort WaitDot = 1;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
#region WINDOW_START_&_BEHAVIOUR_METHOD
|
||||
|
||||
//Constructor
|
||||
public OpeningForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
if (Config.ClientConfig.IsSCM)
|
||||
{
|
||||
LogoCMS.Visible = false;
|
||||
LogoSCM.Visible = true;
|
||||
this.Icon = Client2020.Properties.Resources.MAESTRO_ACTIVE_ICON;
|
||||
}
|
||||
else
|
||||
{
|
||||
LogoCMS.Visible = true;
|
||||
LogoSCM.Visible = false;
|
||||
}
|
||||
|
||||
//Set window Position
|
||||
this.Location = new Point((Screen.PrimaryScreen.Bounds.Width / 2) - (this.Width / 2), (Screen.PrimaryScreen.Bounds.Height / 2) - (this.Height / 2));
|
||||
}
|
||||
|
||||
|
||||
|
||||
//OnLoad Method
|
||||
private void LoadingForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
//Force on Desktop 1
|
||||
this.DesktopLocation = new Point((Screen.PrimaryScreen.Bounds.Width / 2) - (this.Width / 2), (Screen.PrimaryScreen.Bounds.Height / 2) - (this.Height / 2));
|
||||
|
||||
//Start Backgroud Task
|
||||
ConnTask = Task.Run(() => BagroundWorker());
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Set the status & Messages Labels
|
||||
private void setStatus(String status, String Error)
|
||||
{
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (this.InvokeRequired)
|
||||
{
|
||||
this.Invoke((MethodInvoker)delegate () { StatusLBL.Text = status; });
|
||||
this.Invoke((MethodInvoker)delegate () { ErrorLBL.Text = Error; });
|
||||
}
|
||||
else
|
||||
{
|
||||
StatusLBL.Text = status;
|
||||
ErrorLBL.Text = Error;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Set Opacity of the Window
|
||||
private void setOpacity(double opacity)
|
||||
{
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (this.InvokeRequired)
|
||||
{
|
||||
this.Invoke((MethodInvoker)delegate () { this.Opacity = opacity; });
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Opacity = opacity;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Close the Window
|
||||
private void closeWindow()
|
||||
{
|
||||
//Invoke method if is needed or call the method in STD mode
|
||||
if (this.InvokeRequired)
|
||||
this.Invoke((MethodInvoker)delegate () { this.Close(); });
|
||||
else
|
||||
this.Close();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
#region CONNECTING_TASK_METHOD
|
||||
|
||||
//Main Void of the background Task
|
||||
private void BagroundWorker()
|
||||
{
|
||||
//Set App Opacity
|
||||
setOpacity(1);
|
||||
|
||||
//Show the loading state on the app ICON
|
||||
|
||||
//try to Request
|
||||
if (!Config.ConnectionConfig.BypassReadConfiguration)
|
||||
{
|
||||
setStatus("Connecting to " + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort, "");
|
||||
|
||||
Boolean error = false;
|
||||
do
|
||||
{
|
||||
if (error == true)
|
||||
return;
|
||||
} while (!testConnection(new Uri(Config.ConnectionConfig.ReadConfigUrl), out error));
|
||||
|
||||
}
|
||||
|
||||
//Set App Opacity (Only Siemens)
|
||||
if (Config.VendorHmiConfig.Type == 2)
|
||||
setOpacity(0.85);
|
||||
|
||||
//Open Nc Window
|
||||
setStatus("Opening NC Window... ", "");
|
||||
|
||||
if (Config.VendorHmiConfig.Enabled)
|
||||
if (!OpenNcWindow())
|
||||
return;
|
||||
|
||||
//Open Nc Window
|
||||
setStatus("Opening PROD Window... ", "");
|
||||
|
||||
if (Config.ProdSoftwareConfig.Enabled)
|
||||
{
|
||||
var exename = Path.GetFileNameWithoutExtension(Config.ProdSoftwareConfig.Path);
|
||||
if (!OpenProdWindow(Config.ProdSoftwareConfig.Path, exename))
|
||||
return;
|
||||
}
|
||||
|
||||
//Set App Opacity
|
||||
setOpacity(1);
|
||||
|
||||
//Close the Window
|
||||
closeWindow();
|
||||
}
|
||||
|
||||
|
||||
//Sub-Method used to test the connection
|
||||
private bool testConnection(Uri url, out Boolean error)
|
||||
{
|
||||
Boolean Connected = false;
|
||||
error = false;
|
||||
|
||||
//Try to connect
|
||||
if (url.Scheme == Uri.UriSchemeHttps || url.Scheme == Uri.UriSchemeHttp)
|
||||
{
|
||||
try
|
||||
{
|
||||
ConnTestRequest = (HttpWebRequest)WebRequest.Create(url);
|
||||
ConnTestRequest.Timeout = (int)(TimerTest);
|
||||
ConnTestRequest.KeepAlive = false;
|
||||
ConnTestResponse = (HttpWebResponse)ConnTestRequest.GetResponse();
|
||||
ConnTestError = ConnTestResponse.StatusCode.ToString();
|
||||
Connected = (ConnTestResponse.StatusCode == HttpStatusCode.OK) ? true : false;
|
||||
}
|
||||
catch (WebException ex)
|
||||
{
|
||||
Connected = false;
|
||||
ConnTestError = ex.Status.ToString();
|
||||
}
|
||||
}
|
||||
else
|
||||
Connected = true;
|
||||
|
||||
|
||||
//Check if it's connected
|
||||
if (Connected)
|
||||
{
|
||||
// var jsonDefinition = new { ncVendor = "", showHMI = "", ncIp = "", ncPort = "", prodEnabled = "", prodPath = "", extPrograms = "" };
|
||||
|
||||
var jsonDefinition = new ServerConfigModel();
|
||||
setStatus("Connected!", "");
|
||||
|
||||
//Read the configuration from Server
|
||||
try
|
||||
{
|
||||
using (var reader = new StreamReader(ConnTestResponse.GetResponseStream()))
|
||||
{
|
||||
var ConfigResponse = JsonConvert.DeserializeAnonymousType(reader.ReadToEnd(), jsonDefinition);
|
||||
|
||||
if (!String.IsNullOrWhiteSpace(ConfigResponse.NcVendor) && !String.IsNullOrWhiteSpace(ConfigResponse.ShowHMI))
|
||||
{
|
||||
string ncVendorName = ConfigResponse.NcVendor.ToUpper();
|
||||
string ncVendorHMI = ConfigResponse.ShowHMI.ToUpper();
|
||||
Config.VendorHmiConfig.IpAddress = ConfigResponse.NcIp.ToUpper();
|
||||
Config.VendorHmiConfig.Port = ConfigResponse.NcPort.ToUpper();
|
||||
string ProdEnabled = ConfigResponse.ProdEnabled.ToUpper();
|
||||
string ProdPath = ConfigResponse.ProdPath.ToUpper();
|
||||
string Autorun = ConfigResponse.Autorun.ToUpper();
|
||||
|
||||
|
||||
//Read the Server Type
|
||||
if (ncVendorName.Equals("DEMO"))
|
||||
Config.VendorHmiConfig.Type = 0;
|
||||
else if (ncVendorName.Equals("FANUC"))
|
||||
Config.VendorHmiConfig.Type = 1;
|
||||
else if (ncVendorName.Equals("SIEMENS"))
|
||||
Config.VendorHmiConfig.Type = 2;
|
||||
else if (ncVendorName.Equals("OSAI"))
|
||||
Config.VendorHmiConfig.Type = 3;
|
||||
else if (ncVendorName.Equals("S7NET"))
|
||||
Config.VendorHmiConfig.Type = 4;
|
||||
else
|
||||
{
|
||||
setStatus("Close the application!", "Errror in configuration, from server");
|
||||
error = true;
|
||||
return false;
|
||||
}
|
||||
|
||||
//Read if the HMI must be visible
|
||||
if (ncVendorHMI.ToUpper().Equals("TRUE"))
|
||||
Config.VendorHmiConfig.Enabled = true;
|
||||
else
|
||||
Config.VendorHmiConfig.Enabled = false;
|
||||
|
||||
//Autorun
|
||||
if (Autorun.ToUpper().Equals("TRUE"))
|
||||
Config.ClientConfig.Autorun = true;
|
||||
else
|
||||
Config.ClientConfig.Autorun = false;
|
||||
|
||||
|
||||
//Read if the HMI must be visible
|
||||
if (ProdEnabled.ToUpper().Equals("TRUE"))
|
||||
Config.ProdSoftwareConfig.Enabled = true;
|
||||
else
|
||||
Config.ProdSoftwareConfig.Enabled = false;
|
||||
|
||||
// Paths
|
||||
Config.ProdSoftwareConfig.Path = ProdPath;
|
||||
Config.TextEditorPath = ConfigResponse.EditorPath;
|
||||
|
||||
if (ConfigResponse.ExtSoftwares != null)
|
||||
Config.ExtSoftwaresConfig = ConfigResponse.ExtSoftwares.ToArray();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
}
|
||||
return true;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
setStatus("Error!", "Error While loading the configuration");
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
//Set the Dot string
|
||||
String dot = "";
|
||||
for (int i = 0; i < WaitDot; i++) dot += ".";
|
||||
|
||||
//Set the status
|
||||
setStatus("Retry connection to " + Config.ConnectionConfig.ServerUrl + ":" + Config.ConnectionConfig.ServerPort + " " + dot, "Server not found (Error: " + ConnTestError + ")");
|
||||
if (WaitDot < 3)
|
||||
WaitDot++;
|
||||
else
|
||||
WaitDot = 0;
|
||||
|
||||
//Wait 500 ms
|
||||
Thread.Sleep(500);
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
//Sub-Method used to open the NC Window
|
||||
private bool OpenNcWindow()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
//Sub-Method used to open the NC Window
|
||||
private bool OpenProdWindow(string ExePath, string ExeName)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
#region CLOSE_BUTTON_BEHAVIUR
|
||||
|
||||
//On click Method
|
||||
private void CloseLabel_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
//Exit
|
||||
Environment.Exit(0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//On Mouse Enter
|
||||
private void CloseLabel_MouseEnter(object sender, EventArgs e)
|
||||
{
|
||||
CloseLabel.ForeColor = Color.DarkRed;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//On Mouse Leave
|
||||
private void CloseLabel_MouseLeave(object sender, EventArgs e)
|
||||
{
|
||||
CloseLabel.ForeColor = Color.White;
|
||||
}
|
||||
#endregion
|
||||
|
||||
private void CloseLabel_MouseClick(object sender, EventArgs e)
|
||||
{
|
||||
Environment.Exit(0);
|
||||
}
|
||||
|
||||
private void CloseLabel_MouseClick(object sender, MouseEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,180 @@
|
||||
using Client.Config;
|
||||
using Client.Utils;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Management;
|
||||
using Microsoft.Win32;
|
||||
using CefSharp.WinForms;
|
||||
using CefSharp;
|
||||
|
||||
namespace Client2020
|
||||
{
|
||||
static class Program
|
||||
{
|
||||
|
||||
static Mutex CmsStepClientMutex = new Mutex(true, "{66fa29db-925a-402b-a4c7-d3d780fb1bc3}");
|
||||
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
|
||||
//Crate General Exception Handler
|
||||
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(GeneralExMethod);
|
||||
|
||||
//Read App Configuration
|
||||
readConfiguration();
|
||||
|
||||
//Initialize Chromium
|
||||
InitializeCefSettings();
|
||||
|
||||
//Check if is already running an instance of this application
|
||||
if (!CmsStepClientMutex.WaitOne(TimeSpan.Zero, true))
|
||||
ShowAlarmAndClose("Only one istance of " + Application.ProductName + " can be executed!");
|
||||
|
||||
|
||||
//Check Graphic Card in Energy Saving mode
|
||||
checkGraphicCard();
|
||||
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
|
||||
//Run the Loading Form
|
||||
Application.Run(new OpeningForm());
|
||||
|
||||
//Run the Main-Browser Form
|
||||
Application.Run(new MainForm());
|
||||
}
|
||||
|
||||
static private void InitializeCefSettings()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (Config.ConnectionConfig.DeleteCahceFolderOnStartup && Directory.Exists(Constants.BROWSER_CACHE_FOLDER))
|
||||
{
|
||||
Directory.Delete(Constants.BROWSER_CACHE_FOLDER, true);
|
||||
}
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
ShowAlarmAndClose(E.Message);
|
||||
}
|
||||
|
||||
//Setup the CEF Folder
|
||||
var settings = new CefSettings();
|
||||
|
||||
if (Config.ClientConfig.RenderingMethod == Constants.Rendering.CPU)
|
||||
settings.CefCommandLineArgs.Add("--disable-gpu");
|
||||
|
||||
settings.CefCommandLineArgs.Add("--enable-transparent-visuals");
|
||||
settings.CefCommandLineArgs.Add("--disable-pinch");
|
||||
settings.CefCommandLineArgs.Add("--enable-media-stream");
|
||||
settings.CefCommandLineArgs.Add("--enable-usermedia-screen-capture");
|
||||
settings.CefCommandLineArgs.Add("--no-proxy-server");
|
||||
settings.CefCommandLineArgs.Add("--ignore-certificate-errors-spki-list");
|
||||
settings.CefCommandLineArgs.Add("--ignore-ssl-errors");
|
||||
CefSharpSettings.FocusedNodeChangedEnabled = true;
|
||||
CefSharpSettings.LegacyJavascriptBindingEnabled = true;
|
||||
|
||||
settings.LogSeverity = LogSeverity.Fatal;
|
||||
settings.CachePath = Constants.BROWSER_CACHE_FOLDER;
|
||||
|
||||
|
||||
//Initialize Cef
|
||||
try
|
||||
{
|
||||
Cef.Initialize(settings);
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
ShowAlarmAndClose(E.Message);
|
||||
}
|
||||
}
|
||||
|
||||
#region CONFIG_METHODS
|
||||
|
||||
//Sub-Method used to read the configuration
|
||||
static private void readConfiguration()
|
||||
{
|
||||
//Read the Config
|
||||
try
|
||||
{
|
||||
ConfigController.ReadStartupConfig();
|
||||
}
|
||||
catch (Exception E)
|
||||
{
|
||||
ShowAlarmAndClose(E.Message);
|
||||
}
|
||||
}
|
||||
|
||||
static private void checkGraphicCard()
|
||||
{
|
||||
|
||||
ManagementObjectSearcher VideoCardsQuery = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_VideoController");
|
||||
ManagementObjectCollection VideoCards = VideoCardsQuery.Get();
|
||||
//Check if i have more Cards
|
||||
if (VideoCards.Count > 1)
|
||||
{
|
||||
//Prepare List of Cards
|
||||
String Cardlist = "";
|
||||
foreach (ManagementObject card in VideoCards)
|
||||
{
|
||||
Cardlist = Cardlist + " - " + card["Name"] + "\n";
|
||||
}
|
||||
|
||||
//If is Win 10 check the Registry Key
|
||||
if (Environment.OSVersion.Version.Major == 10)
|
||||
{
|
||||
string keyName = @"HKEY_CURRENT_USER\Software\Microsoft\DirectX\UserGpuPreferences";
|
||||
string valueName = System.Reflection.Assembly.GetExecutingAssembly().Location;
|
||||
Object value = Registry.GetValue(keyName, valueName, null);
|
||||
if (value == null || !value.Equals("GpuPreference=1;"))
|
||||
{
|
||||
//code if key Not Exist add it and restart
|
||||
Registry.SetValue(keyName, valueName, "GpuPreference=1;");
|
||||
MessageBox.Show("Active has foundthis Graphic Cards:\n\n" + Cardlist + "\nThe graphic configuration has been setted. Press Ok to restart the Application", Application.ProductName);
|
||||
Application.Restart();
|
||||
Environment.Exit(0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
private static void GeneralExMethod(object sender, UnhandledExceptionEventArgs args)
|
||||
{
|
||||
Exception e = (Exception)args.ExceptionObject;
|
||||
|
||||
//Create Directory
|
||||
if (!Directory.Exists(Client.Utils.Constants.CEF_EXCEPTIONLOG_PATH))
|
||||
Directory.CreateDirectory(Constants.CEF_EXCEPTIONLOG_PATH);
|
||||
|
||||
//Log the exception on File
|
||||
string path = Constants.CEF_EXCEPTIONLOG_PATH + @"\" + DateTime.Now.ToString("yyyy_MM_dd") + @".txt";
|
||||
using (StreamWriter sw = File.AppendText(path))
|
||||
sw.WriteLine(DateTime.Now.ToString("HH:mm:ss") + " | Class.Name: " + e.TargetSite.ReflectedType.Name + " | Method.Name: " + e.TargetSite.Name + " | Error: " + e.Message);
|
||||
|
||||
}
|
||||
|
||||
|
||||
//Method Used to Show an alarm and close the application
|
||||
public static void ShowAlarmAndClose(string Message)
|
||||
{
|
||||
MessageBox.Show(Message,
|
||||
Application.ProductName,
|
||||
MessageBoxButtons.OK,
|
||||
MessageBoxIcon.Error,
|
||||
MessageBoxDefaultButton.Button1
|
||||
);
|
||||
Environment.Exit(-1);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// Le informazioni generali relative a un assembly sono controllate dal seguente
|
||||
// set di attributi. Modificare i valori di questi attributi per modificare le informazioni
|
||||
// associate a un assembly.
|
||||
[assembly: AssemblyTitle("Active Client 2.0")]
|
||||
[assembly: AssemblyDescription("Active Client - Main HMI for CMS Machines")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("CMS Spa")]
|
||||
[assembly: AssemblyProduct("Active Client")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Se si imposta ComVisible su false, i tipi in questo assembly non saranno visibili
|
||||
// ai componenti COM. Se è necessario accedere a un tipo in questo assembly da
|
||||
// COM, impostare su true l'attributo ComVisible per tale tipo.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// Se il progetto viene esposto a COM, il GUID seguente verrà utilizzato come ID della libreria dei tipi
|
||||
[assembly: Guid("0780047f-12e4-4fcc-9748-6b23f0fd3711")]
|
||||
|
||||
// Le informazioni sulla versione di un assembly sono costituite dai seguenti quattro valori:
|
||||
//
|
||||
// Versione principale
|
||||
// Versione secondaria
|
||||
// Numero di build
|
||||
// Revisione
|
||||
//
|
||||
// È possibile specificare tutti i valori oppure impostare valori predefiniti per i numeri relativi alla revisione e alla build
|
||||
// usando l'asterisco '*' come illustrato di seguito:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("0.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("2.0")]
|
||||
@@ -0,0 +1,133 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// Il codice è stato generato da uno strumento.
|
||||
// Versione runtime:4.0.30319.42000
|
||||
//
|
||||
// Le modifiche apportate a questo file possono provocare un comportamento non corretto e andranno perse se
|
||||
// il codice viene rigenerato.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Client2020.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via.
|
||||
/// </summary>
|
||||
// Questa classe è stata generata automaticamente dalla classe StronglyTypedResourceBuilder.
|
||||
// tramite uno strumento quale ResGen o Visual Studio.
|
||||
// Per aggiungere o rimuovere un membro, modificare il file con estensione ResX ed eseguire nuovamente ResGen
|
||||
// con l'opzione /str oppure ricompilare il progetto VS.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Restituisce l'istanza di ResourceManager nella cache utilizzata da questa classe.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Client2020.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte le
|
||||
/// ricerche di risorse eseguite utilizzando questa classe di risorse fortemente tipizzata.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Icon simile a (Icona).
|
||||
/// </summary>
|
||||
internal static System.Drawing.Icon ACTIVE_ICONA {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("ACTIVE_ICONA", resourceCulture);
|
||||
return ((System.Drawing.Icon)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap ACTIVE_ICONA1 {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("ACTIVE_ICONA1", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap CM_ACTIVE_LOGO {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("CM_ACTIVE_LOGO", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap CM_ACTIVE_LOGO_INVERTED {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("CM_ACTIVE_LOGO_INVERTED", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Icon simile a (Icona).
|
||||
/// </summary>
|
||||
internal static System.Drawing.Icon MAESTRO_ACTIVE_ICON {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("MAESTRO_ACTIVE_ICON", resourceCulture);
|
||||
return ((System.Drawing.Icon)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
internal static System.Drawing.Bitmap MAESTRO_ACTIVE_LOGO {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("MAESTRO_ACTIVE_LOGO", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Cerca una risorsa localizzata di tipo System.Drawing.Icon simile a (Icona).
|
||||
/// </summary>
|
||||
internal static System.Drawing.Icon SinumerikHmi {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("SinumerikHmi", resourceCulture);
|
||||
return ((System.Drawing.Icon)(obj));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="SinumerikHmi" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\SinumerikHmi.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="CM_ACTIVE_LOGO" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\CM_ACTIVE_LOGO.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="CM_ACTIVE_LOGO_INVERTED" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\CM_ACTIVE_LOGO_INVERTED.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="MAESTRO_ACTIVE_LOGO" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\MAESTRO_ACTIVE_LOGO.jpg;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="MAESTRO_ACTIVE_ICON" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\SCM_MAESTRO_ACTIVE_ICONA.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="ACTIVE_ICONA" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\ACTIVE_ICONA.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="ACTIVE_ICONA1" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\ACTIVE_ICONA.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -0,0 +1,30 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Client2020.Properties
|
||||
{
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
|
||||
{
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default
|
||||
{
|
||||
get
|
||||
{
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
|
After Width: | Height: | Size: 104 KiB |
|
After Width: | Height: | Size: 41 KiB |
|
After Width: | Height: | Size: 174 KiB |
|
After Width: | Height: | Size: 108 KiB |
|
After Width: | Height: | Size: 106 KiB |
|
After Width: | Height: | Size: 428 KiB |
|
After Width: | Height: | Size: 101 KiB |
|
After Width: | Height: | Size: 5.3 KiB |
@@ -0,0 +1,83 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
|
||||
|
||||
<dependency>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity type="Win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"></assemblyIdentity>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
|
||||
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
|
||||
<security>
|
||||
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<!-- Opzioni manifesto di Controllo dell'account utente
|
||||
Per modificare il livello di Controllo dell'account utente di Windows, sostituire il
|
||||
nodo requestedExecutionLevel con uno dei seguenti.
|
||||
|
||||
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
|
||||
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
|
||||
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
|
||||
|
||||
Se si specifica l'elemento requestedExecutionLevel, la funzionalità Virtualizzazione file system e registro di sistema verrà disabilitata.
|
||||
Rimuovere questo elemento se l'applicazione richiede questa virtualizzazione per
|
||||
compatibilità con le versioni precedenti.
|
||||
-->
|
||||
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
|
||||
</requestedPrivileges>
|
||||
</security>
|
||||
</trustInfo>
|
||||
|
||||
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
|
||||
<application>
|
||||
<!-- Elenco delle versioni di Windows in cui è stata testata questa applicazione e
|
||||
per cui è stato previsto l'uso. Rimuovere il commento dagli elementi appropriati per
|
||||
fare in modo che Windows selezioni automaticamente l'ambiente più compatibile. -->
|
||||
|
||||
<!-- Windows Vista -->
|
||||
<!--<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}" />-->
|
||||
|
||||
|
||||
<!-- Windows 8 -->
|
||||
<!--<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}" />-->
|
||||
|
||||
<!-- Windows 8.1 -->
|
||||
<!--<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}" />-->
|
||||
|
||||
<!-- Windows 7 -->
|
||||
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}" />
|
||||
|
||||
<!-- Windows 10 -->
|
||||
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}" />
|
||||
|
||||
</application>
|
||||
</compatibility>
|
||||
|
||||
<!-- Indica che l'applicazione è sensibile ai valori DPI e non verrà scalata automaticamente da Windows in caso di
|
||||
valori DPI maggiori. Le applicazioni Windows Presentation Foundation (WPF) sono automaticamente sensibili ai valori DPI, pertanto non è necessario
|
||||
acconsentire esplicitamente. Con le applicazioni Windows Form destinate a .NET Framework 4.6 per cui è stato acconsentito esplicitamente a questa impostazione,
|
||||
è anche necessario impostare 'EnableWindowsFormsHighDpiAutoResizing' su 'true' nel relativo file app.config. -->
|
||||
|
||||
<application xmlns="urn:schemas-microsoft-com:asm.v3">
|
||||
<windowsSettings>
|
||||
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</dpiAware>
|
||||
</windowsSettings>
|
||||
</application>
|
||||
|
||||
<!-- Abilita i temi per finestre di dialogo e controlli comuni di Windows (Windows XP e versioni successive) -->
|
||||
<!--
|
||||
<dependency>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity
|
||||
type="win32"
|
||||
name="Microsoft.Windows.Common-Controls"
|
||||
version="6.0.0.0"
|
||||
processorArchitecture="*"
|
||||
publicKeyToken="6595b64144ccf1df"
|
||||
language="*"
|
||||
/>
|
||||
</dependentAssembly>
|
||||
</dependency>
|
||||
-->
|
||||
|
||||
</assembly>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="cef.redist.x64" version="84.4.1" targetFramework="net462" />
|
||||
<package id="cef.redist.x86" version="84.4.1" targetFramework="net462" />
|
||||
<package id="CefSharp.Common" version="84.4.10" targetFramework="net462" />
|
||||
<package id="CefSharp.WinForms" version="84.4.10" targetFramework="net462" />
|
||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net462" />
|
||||
</packages>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.2"/>
|
||||
</startup>
|
||||
</configuration>
|
||||
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props" Condition="Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props')" />
|
||||
<Import Project="..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props" Condition="Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props')" />
|
||||
<Import Project="..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props" Condition="Exists('..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props')" />
|
||||
<Import Project="..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props" Condition="Exists('..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props')" />
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{97474BC6-6405-4043-9BEE-E1BDE6B8D972}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<RootNamespace>Client_New</RootNamespace>
|
||||
<AssemblyName>Client_New</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.6.2</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
<TargetFrameworkProfile />
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<OutputPath>bin\x64\Debug\</OutputPath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
|
||||
<PlatformTarget>x64</PlatformTarget>
|
||||
<OutputPath>bin\x64\Release\</OutputPath>
|
||||
<Optimize>true</Optimize>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Form1.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Form1.Designer.cs">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Program.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<EmbeddedResource Include="Form1.resx">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
|
||||
</None>
|
||||
<Compile Include="Properties\Settings.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\cef.redist.x64.84.4.1\build\cef.redist.x64.props'))" />
|
||||
<Error Condition="!Exists('..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\cef.redist.x86.84.4.1\build\cef.redist.x86.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.props'))" />
|
||||
<Error Condition="!Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets'))" />
|
||||
</Target>
|
||||
<Import Project="..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets" Condition="Exists('..\packages\CefSharp.Common.84.4.10\build\CefSharp.Common.targets')" />
|
||||
<Import Project="..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets" Condition="Exists('..\packages\CefSharp.WinForms.84.4.10\build\CefSharp.WinForms.targets')" />
|
||||
</Project>
|
||||
@@ -0,0 +1,51 @@
|
||||
|
||||
namespace Client_New
|
||||
{
|
||||
partial class Form1
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// Form1
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(1264, 609);
|
||||
this.ControlBox = false;
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
|
||||
this.Name = "Form1";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "Form1";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using CefSharp.WinForms;
|
||||
|
||||
namespace Client_New
|
||||
{
|
||||
public partial class Form1 : Form
|
||||
{
|
||||
public Form1()
|
||||
{
|
||||
InitializeComponent();
|
||||
var browser = new ChromiumWebBrowser("http:\\localhost:9000");
|
||||
this.Controls.Add(browser);
|
||||
}
|
||||
|
||||
private void cursort(object sender, EventArgs e)
|
||||
{
|
||||
//throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace Client_New
|
||||
{
|
||||
static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
Application.Run(new Form1());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("Client_New")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Client_New")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2020")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("97474bc6-6405-4043-9bee-e1bde6b8d972")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
@@ -0,0 +1,63 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Client_New.Properties {
|
||||
using System;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A strongly-typed resource class, for looking up localized strings, etc.
|
||||
/// </summary>
|
||||
// This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
// class via a tool like ResGen or Visual Studio.
|
||||
// To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
// with the /str option, or rebuild your VS project.
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
internal class Resources {
|
||||
|
||||
private static global::System.Resources.ResourceManager resourceMan;
|
||||
|
||||
private static global::System.Globalization.CultureInfo resourceCulture;
|
||||
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
|
||||
internal Resources() {
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the cached ResourceManager instance used by this class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Resources.ResourceManager ResourceManager {
|
||||
get {
|
||||
if (object.ReferenceEquals(resourceMan, null)) {
|
||||
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Client_New.Properties.Resources", typeof(Resources).Assembly);
|
||||
resourceMan = temp;
|
||||
}
|
||||
return resourceMan;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Overrides the current thread's CurrentUICulture property for all
|
||||
/// resource lookups using this strongly typed resource class.
|
||||
/// </summary>
|
||||
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||
internal static global::System.Globalization.CultureInfo Culture {
|
||||
get {
|
||||
return resourceCulture;
|
||||
}
|
||||
set {
|
||||
resourceCulture = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@@ -0,0 +1,26 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
namespace Client_New.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.9.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
|
||||
public static Settings Default {
|
||||
get {
|
||||
return defaultInstance;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="cef.redist.x64" version="84.4.1" targetFramework="net461" />
|
||||
<package id="cef.redist.x86" version="84.4.1" targetFramework="net461" />
|
||||
<package id="CefSharp.Common" version="84.4.10" targetFramework="net461" />
|
||||
<package id="CefSharp.WinForms" version="84.4.10" targetFramework="net461" />
|
||||
</packages>
|
||||
@@ -1,7 +1,7 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.29926.136
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.28307.1259
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active", "Thermo.Active\Thermo.Active.csproj", "{AFED34E1-77DB-4D81-830A-A8D0A190573D}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
@@ -19,8 +19,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active.Database", "T
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active.Config", "Thermo.Active.Config\Thermo.Active.Config.csproj", "{3F5C2483-FC87-43EF-92A8-66FF7D0E440F}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client", "Client\Client.csproj", "{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active.Utils", "Thermo.Active.Utils\Thermo.Active.Utils.csproj", "{CBEB631B-ABFA-4042-9779-C0060B0DFEFE}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CMS.Client", "CMS.Client", "{2F873243-A483-40B6-A0F7-65FC3541A269}"
|
||||
@@ -41,6 +39,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Thermo.Active.CmsConnectGat
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CMS_CORE_Library", "..\cms_core_library\CMS_CORE_Library\CMS_CORE_Library.csproj", "{4ABF8EEF-2B23-483E-ACDC-53214FE28681}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Client2020", "Client2020\Client2020.csproj", "{0780047F-12E4-4FCC-9748-6B23F0FD3711}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
@@ -111,18 +111,6 @@ Global
|
||||
{3F5C2483-FC87-43EF-92A8-66FF7D0E440F}.Release|x64.Build.0 = Release|Any CPU
|
||||
{3F5C2483-FC87-43EF-92A8-66FF7D0E440F}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3F5C2483-FC87-43EF-92A8-66FF7D0E440F}.Release|x86.Build.0 = Release|Any CPU
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|Any CPU.ActiveCfg = Debug|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|Any CPU.Build.0 = Debug|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|x64.Build.0 = Debug|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Debug|x86.Build.0 = Debug|x86
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|Any CPU.ActiveCfg = Release|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|Any CPU.Build.0 = Release|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|x64.ActiveCfg = Release|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|x64.Build.0 = Release|x64
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3}.Release|x86.Build.0 = Release|Any CPU
|
||||
{CBEB631B-ABFA-4042-9779-C0060B0DFEFE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{CBEB631B-ABFA-4042-9779-C0060B0DFEFE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CBEB631B-ABFA-4042-9779-C0060B0DFEFE}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
@@ -219,6 +207,18 @@ Global
|
||||
{4ABF8EEF-2B23-483E-ACDC-53214FE28681}.Release|x64.Build.0 = Release|x64
|
||||
{4ABF8EEF-2B23-483E-ACDC-53214FE28681}.Release|x86.ActiveCfg = Release|x86
|
||||
{4ABF8EEF-2B23-483E-ACDC-53214FE28681}.Release|x86.Build.0 = Release|x86
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|x64.Build.0 = Debug|x64
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Debug|x86.Build.0 = Debug|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x64.ActiveCfg = Release|x64
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x64.Build.0 = Release|x64
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711}.Release|x86.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@@ -229,7 +229,6 @@ Global
|
||||
{20FC0937-E7CA-4693-95F9-7A948EFD173B} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{357D5EE1-FFC8-489B-9232-22CF474D9A6F} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{3F5C2483-FC87-43EF-92A8-66FF7D0E440F} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{66FA29DB-925A-402B-A4C7-D3D780FB1BC3} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
{CBEB631B-ABFA-4042-9779-C0060B0DFEFE} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{205A6ADE-FB5A-45CB-9C51-9817E7BB8939} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
{34434B22-D546-4A5C-B575-49720C77643A} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
@@ -237,6 +236,7 @@ Global
|
||||
{B2366B08-96BD-4F6B-B748-B45089B87A14} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{F9F17F23-660E-488C-A7FA-6A5B35D64313} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
{49B04D99-0ECD-4900-86D3-7098D61314D7} = {0769EE3C-4259-4C72-97B4-0CCAEBFA7724}
|
||||
{0780047F-12E4-4FCC-9748-6B23F0FD3711} = {2F873243-A483-40B6-A0F7-65FC3541A269}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {51D459FB-B45B-4A47-984E-46C35F933A82}
|
||||
|
||||