public static string CompileHmiTarget(HmiTarget hmiTarget) { string message = null; ICompilable compileHMI = hmiTarget.GetService <ICompilable>(); CompilerResult result = compileHMI.Compile(); message = WriteCompilerResults(result); return(message); }
private void Compile(object sender, EventArgs e) { btn_CompileHW.Enabled = false; string devname = txt_Device.Text; bool found = false; foreach (Device device in MyProject.Devices) { DeviceItemComposition deviceItemAggregation = device.DeviceItems; foreach (DeviceItem deviceItem in deviceItemAggregation) { if (deviceItem.Name == devname || device.Name == devname) { SoftwareContainer softwareContainer = deviceItem.GetService <SoftwareContainer>(); if (softwareContainer != null) { if (softwareContainer.Software is PlcSoftware) { PlcSoftware controllerTarget = softwareContainer.Software as PlcSoftware; if (controllerTarget != null) { found = true; ICompilable compiler = controllerTarget.GetService <ICompilable>(); CompilerResult result = compiler.Compile(); txt_Status.Text = "Compiling of " + controllerTarget.Name + ": State: " + result.State + " / Warning Count: " + result.WarningCount + " / Error Count: " + result.ErrorCount; } } if (softwareContainer.Software is HmiTarget) { HmiTarget hmitarget = softwareContainer.Software as HmiTarget; if (hmitarget != null) { found = true; ICompilable compiler = hmitarget.GetService <ICompilable>(); CompilerResult result = compiler.Compile(); txt_Status.Text = "Compiling of " + hmitarget.Name + ": State: " + result.State + " / Warning Count: " + result.WarningCount + " / Error Count: " + result.ErrorCount; } } } } } } if (found == false) { txt_Status.Text = "Found no device with name " + txt_Device.Text; } btn_CompileHW.Enabled = true; }
private static void Compile() { Console.WriteLine("Compile..."); _hmiTarget.GetService <ICompilable>().Compile(); _plcSoftware.GetService <ICompilable>().Compile(); }