Exemplo n.º 1
0
        //private void RunDBCompareFunction(object PolicyBackupID)
        //{
        //    List<DiffPolicyInfo> PolInfo = null;
        //    PolicySet PassedPolicy = new PolicySet();

        //    PassedPolicy.LogUpdateMessage += new PolicySet.LogUpdate(Open_LogUpdateMessage);
        //    PassedPolicy.OpenDBBackupSet(Int32.Parse(PolicyBackupID.ToString()));

        //    PolInfo = polSet.Compare(PassedPolicy,false);

        //    this.Dispatcher.Invoke(CompareFinishedMethodInstance, new object[] { PolInfo });

        //}

        private void RunCompareFunction(object FileArray)
        {
            string[] Files = (string[])FileArray;
            List <DiffPolicyInfo> PolInfo = null;

            PolicySet PassedPolicy;

            Stream          stream     = File.Open((string)Files[0], FileMode.Open);
            BinaryFormatter bformatter = new BinaryFormatter();

            PassedPolicy = (PolicySet)bformatter.Deserialize(stream);
            stream.Close();

            if (Files.Length > 1)
            {
                PolicySet PassedPolicyTwo;

                Stream          streamTwo     = File.Open((string)Files[1], FileMode.Open);
                BinaryFormatter bformatterTwo = new BinaryFormatter();
                PassedPolicyTwo = (PolicySet)bformatterTwo.Deserialize(streamTwo);
                streamTwo.Close();

                PolInfo = PassedPolicy.Compare(PassedPolicyTwo, false);
            }
            else
            {
                PolInfo = polSet.Compare(PassedPolicy, false);
            }


            this.Dispatcher.Invoke(CompareFinishedMethodInstance, new object[] { PolInfo });
        }
Exemplo n.º 2
0
        public Window1()
        {
            InitializeComponent();

            CommandBinding cb = new CommandBinding(ApplicationCommands.Copy, CopyCmdExecuted, CopyCmdCanExecute);

            PoliciesListView.CommandBindings.Add(cb);


            // Menu_File_Save_DB.IsEnabled = DB.HasDBSaveRights();

            ADMXLoadFinishedMethodInstance = new ADMXLoadFinishedDelegate(AdmxLoadFinish);
            QueryFinishedMethodInstance    = new QueryFinishedDelegate(QueryFinished);
            CompareFinishedMethodInstance  = new CompareFinishedDelegate(CompareFinished);
            SaveFinishedMethodInstance     = new SaveFinishedDelegate(SaveFinished);
            OpenFinishedMethodInstance     = new OpenFinishedDelegate(OpenFinished);
            UpdateProgViewMethodInstance   = new UpdateProgViewDelegate(UpdateProgView);

            arInfo = new AutoRunInfo(Environment.GetCommandLineArgs());

            if (arInfo.AutoRun() || arInfo.LogToDB)
            {
                polSet = new PolicySet();
                polSet.GPOM.LogUpdateMessage += new GPOManagement.LogUpdate(GPOM_LogUpdateMessage);
                polSet.GetAllPolicies();

                if (arInfo.LogToAutoPath())
                {
                    Stream          stream     = File.Open(arInfo.GetSaveFilename(), FileMode.Create);
                    BinaryFormatter bformatter = new BinaryFormatter();
                    bformatter.Serialize(stream, polSet);
                    stream.Close();
                }

                if (arInfo.LogToAutoPath() && arInfo.CompareToYesterday())
                {
                    Stream          YesterdaysStream    = File.Open(arInfo.GetYesterdaysFile(), FileMode.Open);
                    BinaryFormatter bformatter2         = new BinaryFormatter();
                    PolicySet       YesterdaysPolicySet = (PolicySet)bformatter2.Deserialize(YesterdaysStream);
                    YesterdaysStream.Close();

                    List <DiffPolicyInfo> PolInfo = polSet.Compare(YesterdaysPolicySet, false);

                    Stream          compareStream = File.Open(arInfo.GetSaveCompareFilename(), FileMode.Create);
                    BinaryFormatter bformatter3   = new BinaryFormatter();
                    bformatter3.Serialize(compareStream, PolInfo);
                    compareStream.Close();
                }

                //if (arInfo.LogToDB)
                //{
                //    polSet.CreateDBBackupSet();

                //    int GetPreviousBackupID = DB.GetPreviousBackupID(polSet.BackupSetID);

                //    if (GetPreviousBackupID > 0)
                //    {

                //        List<DiffPolicyInfo> PolInfo = null;
                //        PolicySet LastDBBackup = new PolicySet();

                //        LastDBBackup.OpenDBBackupSet(GetPreviousBackupID);
                //        PolInfo = polSet.Compare(LastDBBackup,arInfo.CheckPreviousRelease);

                //        foreach (DiffPolicyInfo polDiff in PolInfo)
                //        {
                //            polDiff.LogDeletions(GetPreviousBackupID);
                //        }

                //    }

                //}
            }
        }