示例#1
0
 public void SetupCreate()
 {
     Console.WriteLine(SetupData.Create(@"A:\TBYTE", out SetupData setup, out string msg));
     Console.WriteLine(msg);
     SetupData.Write(@"A:\TBYTE", setup, out msg);
     Console.WriteLine(msg);
 }
示例#2
0
        public void SetupLoadAndSave()
        {
            SetupData setup = new SetupData
            {
                Executable = new SetupFile(@"A:\TBYTE\TBYTE.EXE")
            };

            setup.Files.Add(new SetupFile(@"A:\TBYTE\TBYTE.EXE"));
            setup.Files.Add(new SetupFile(@"A:\TBYTE\BEMAFI32.DLL"));

            Console.WriteLine(SetupData.Write(@"A:\TEMP", setup, out string msg));


            Console.WriteLine(msg);

            Console.WriteLine(SetupData.Read(@"A:\TBYTE", out SetupData setup2, out msg));
            Console.WriteLine(msg);
        }
示例#3
0
        private void ArquivoGravar()
        {
            bool HasExecutable = false;
            bool HasInclude    = false;

            foreach (var f in formSetupData.Files)
            {
                if (f.FileFlags.HasFlag(SetupFileFlags.MainExecutable))
                {
                    HasExecutable = true;
                }
                if (f.FileFlags.HasFlag(SetupFileFlags.Include))
                {
                    HasInclude = true;
                }
                if (HasExecutable && HasInclude)
                {
                    break;
                }
            }
            if (!HasExecutable)
            {
                string probExecutable = IO.FindMainExecutable(lblOriginFolder.Text);
                if (!string.IsNullOrEmpty(probExecutable))
                {
                    probExecutable = Path.GetFileName(probExecutable);
                    foreach (var f in formSetupData.Files)
                    {
                        if (string.IsNullOrEmpty(f.Folder) && Path.GetFileName(f.File).Equals(probExecutable, StringComparison.InvariantCultureIgnoreCase))
                        {
                            f.FileFlags  |= SetupFileFlags.Include | SetupFileFlags.MainExecutable;
                            HasExecutable = true;
                            HasInclude    = true;
                            break;
                        }
                    }
                }
                if (!HasExecutable)
                {
                    Dialog.Error("Você não selecionou um executável para o setup!");
                    return;
                }
            }
            if (!HasInclude)
            {
                Dialog.Error("Você não selecionou nenhum arquivo para o setup!");
                return;
            }
            if (!Dialog.YesNo("Deseja gravar o arquivo de setup em " + lblOriginFolder.Text + "?"))
            {
                return;
            }
            formSetupData.Arguments         = txArguments.Text;
            formSetupData.IgnoredExtensions = ignoreExts.Value;
            formSetupData.IncludeExtensions = includeExt.Value;
            formSetupData.JustOneInstance   = chkJustOneInstance.Checked;
            formSetupData.UpdateSource      = (UpdateSource)editUpdateSource.UpdateSource.Clone();
            formSetupData.UpdateType        = editUpdateSource.UpdateType;

            if (SetupData.Write(lblOriginFolder.Text, formSetupData, out string message))
            {
                Dialog.Message("Dados gravados em " + lblOriginFolder.Text + "\n\n" + message);
                Config.AddLastFile(formSetupData.SetupFile);
            }
            else
            {
                Dialog.Error("Erro ao gravar em " + lblOriginFolder.Text + "\n\n" + message);
            }
        }