Esempio n. 1
0
        public static bool DoSyncStartups()
        {
            try
            {
                Network net;
                net = Utilities.ConnectNetwork(0);
                if (net == null)
                {
                    return(false);
                }

                Status.UpdateMessage(0, "Collecting startups (HKLM)");

                ListStartupItems Finaldata = new ListStartupItems();
                Finaldata.Items     = new List <StartupItem>();
                Finaldata.MachineID = SystemInfos.SysInfo.MachineID;
                Finaldata.SIDUsers  = new List <string>();

                ListStartupItems data = CollectInfosReg(Registry.LocalMachine, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", "SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Run", "");
                if (data == null)
                {
                    return(false);
                }

                Finaldata.Items.AddRange(data.Items);

                foreach (string kvp in Userregistries.GetLoadedUserRegistries())
                {
                    Status.UpdateMessage(0, "Collecting startups (" + kvp + ")");

                    Finaldata.SIDUsers.Add(kvp);

                    data = CollectInfosReg(Registry.Users, kvp + "\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", kvp + "\\SOFTWARE\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Run", kvp);
                    if (data == null)
                    {
                        continue;
                    }

                    Finaldata.Items.AddRange(data.Items);
                }

                Status.UpdateMessage(0, "Reporting startups");
                net.ReportStartups(Finaldata);

                net.CloseConnection();
            }
            catch (Exception ee)
            {
                Debug.WriteLine(ee.ToString());
                FoxEventLog.WriteEventLog("Servere error while syncing Startups: " + ee.ToString(), EventLogEntryType.Error);
            }
            Status.UpdateMessage(0);

            return(true);
        }
Esempio n. 2
0
        public static bool DoSyncUsers()
        {
            try
            {
                Network net;
                net = Utilities.ConnectNetwork(0);
                if (net == null)
                {
                    return(false);
                }
                Status.UpdateMessage(0, "Collecting users");

                Dictionary <string, string> lst = Userregistries.GetUsers();
                if (lst == null)
                {
                    net.CloseConnection();
                    Status.UpdateMessage(0);
                    return(true);
                }

                Status.UpdateMessage(0, "Reporting users");
                UsersList lstt = new UsersList();
                lstt.Users     = lst;
                lstt.MachineID = SystemInfos.SysInfo.MachineID;

                net.ReportUsers(lstt);

                net.CloseConnection();
            }
            catch (Exception ee)
            {
                Debug.WriteLine(ee.ToString());
                FoxEventLog.WriteEventLog("Servere error while syncing user list: " + ee.ToString(), EventLogEntryType.Error);
            }
            Status.UpdateMessage(0);

            return(true);
        }