private static void Main(string[] args)
        {
            if (args.Length < 1)
            {
                Console.WriteLine("You must pass the assembly path in the first parameter.");
                return;
            }

            var assemblyPath = args[0];

            if (Path.GetExtension(assemblyPath) != FileExtensions.Dll && Path.GetExtension(assemblyPath) != FileExtensions.Exe)
            {
                Console.WriteLine("You must pass a path to dll or exe file.");
                return;
            }

            try
            {
                var assembly = Assembly.LoadFrom(assemblyPath);
                AssemblyXmlSerializer.SerializeAssemblyToFile(assembly, assemblyPath + FileExtensions.Xml);
                Console.WriteLine($"Saved to: {assemblyPath + FileExtensions.Xml}");
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Exemple #2
0
        private void OnNewFileLoaded(string fileName, string safeFileName)
        {
            var assemblyInfo = AssemblyXmlSerializer.ParseFromXmlFile(fileName);

            if (assemblyInfo != null)
            {
                var tabPage = new TabPage(safeFileName);

                tabControl1.TabPages.Add(tabPage);

                var treeView = new TreeView();
                treeView.AfterSelect += (sender, e) =>
                {
                    ClearEditAttributesArea();
                    _selectedNode = e.Node;
                    OnNodeSelected(_selectedNode);
                };

                treeView.Parent = tabPage;
                treeView.Dock   = DockStyle.Fill;

                var assemblyNode = TreeViewBuilder.BuildTreeViewFromAssembly(assemblyInfo);
                LoadTreeViewToVisualElement(treeView, assemblyNode);
            }
            else
            {
                MessageBox.Show($"Can't open file \"{safeFileName}\".", "Error.", MessageBoxButtons.OK);
            }
        }