public void Restore(PatchModel patch)
        {
            var patcher = new Patcher();
            patcher.Patches.Add(patch.ToPatch());

            patcher.Apply(this.ExeFileName, false);
        }
        public void Apply(PatchModel patch)
        {
            var patcher = new Patcher();
            patcher.Patches.Add(patch.ToPatch());

            patcher.Apply(this.ExeFileName, true);
        }
        public PatcherModel(string fileName, string exeFileName)
        {
            this.FileName = fileName;
            this.ExeFileName = exeFileName;

            this.Patches = new List<PatchModel>();

            var patcher = Patcher.Read(fileName);

            foreach (var patch in patcher.Patches)
            {
                var patchModel = new PatchModel();

                patchModel.Name = patch.Name;
                patchModel.Description = patch.Description;

                foreach (var item in patch.Items)
                {
                    patchModel.Items.Add(new PatchItemModel
                    {
                        Offset = item.Offset,
                        OldValues = item.OldValues,
                        NewValues = item.NewValues
                    });
                }

                patchModel.IsApplied = Patcher.IsApplied(exeFileName, patch);
                patchModel.CanBeApplied = Patcher.CanBeApplied(exeFileName, patch);

                this.Patches.Add(patchModel);
            }
        }
Example #4
0
        public PatcherModel(string fileName, string exeFileName)
        {
            this.FileName    = fileName;
            this.ExeFileName = exeFileName;

            this.Patches = new List <PatchModel>();

            var patcher = Patcher.Read(fileName);

            foreach (var patch in patcher.Patches)
            {
                var patchModel = new PatchModel();

                patchModel.Name        = patch.Name;
                patchModel.Description = patch.Description;

                foreach (var item in patch.Items)
                {
                    patchModel.Items.Add(new PatchItemModel
                    {
                        Offset    = item.Offset,
                        OldValues = item.OldValues,
                        NewValues = item.NewValues
                    });
                }

                patchModel.IsApplied    = Patcher.IsApplied(exeFileName, patch);
                patchModel.CanBeApplied = Patcher.CanBeApplied(exeFileName, patch);

                this.Patches.Add(patchModel);
            }
        }
Example #5
0
        public void Restore(PatchModel patch)
        {
            var patcher = new Patcher();

            patcher.Patches.Add(patch.ToPatch());

            patcher.Apply(this.ExeFileName, false);
        }
Example #6
0
        public void Apply(PatchModel patch)
        {
            var patcher = new Patcher();

            patcher.Patches.Add(patch.ToPatch());

            patcher.Apply(this.ExeFileName, true);
        }