Пример #1
0
        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());
                }
            }
        }
Пример #2
0
        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());
            }
        }