static void HandleBlock(PlcBlock block, PlcSoftware software) { PlcExternalSourceSystemGroup externalSourceGroup = software.ExternalSourceGroup; //Console.WriteLine(block.Name + " " + block.GetType()+ " " +block.ProgrammingLanguage); if (programLanguageToExtension.ContainsKey(block.ProgrammingLanguage.ToString())) { string extension; programLanguageToExtension.TryGetValue(block.ProgrammingLanguage.ToString(), out extension); string folder_prefix; programLanguageToFolderPrefixExtension.TryGetValue(block.ProgrammingLanguage.ToString(), out folder_prefix); var fileInfo = new FileInfo(exportLocation + folder_prefix + block.Name + extension); var blocks = new List <PlcBlock>() { block }; try { if (File.Exists(fileInfo.FullName)) { File.Delete(fileInfo.FullName); } Console.WriteLine(block.Name + " to " + fileInfo.FullName); externalSourceGroup.GenerateSource(blocks, fileInfo, GenerateOptions.None); } catch (Exception exc) { Console.WriteLine(exc.ToString()); } } }
static void HandleType(PlcType plcType, PlcSoftware software) { PlcExternalSourceSystemGroup externalSourceGroup = software.ExternalSourceGroup; string extension = ".udt"; var fileInfo = new FileInfo(exportLocation + @"\udt\" + plcType.Name + extension); var blocks = new List <PlcType>() { plcType }; try { if (File.Exists(fileInfo.FullName)) { File.Delete(fileInfo.FullName); } externalSourceGroup.GenerateSource(blocks, fileInfo, GenerateOptions.None); } catch (Exception exc) { Console.WriteLine(exc.ToString()); } }