public void LoadMachinesLock(string path)
 {
     machines_lock.Items.Clear();
     if (Directory.Exists(path))
     {
         var directoriesInfoFiles = Directory.GetDirectories(path);
         foreach (var dir in directoriesInfoFiles)
         {
             machines_lock.Items.Add(new ComputerDetailsData(new DirectoryInfo(dir).Name, "", "", "", "", "Images/Folder.ico"));
         }
         string[] computersInfoFiles = Directory.GetFiles(path, "*.my");
         foreach (string computerFile in computersInfoFiles)
         {
             string Name         = Path.GetFileName(computerFile).Replace(".my", "");
             var    computerData = FileHandler.Load <ComputerDetailsData>(computerFile);
             computerData.ImageSource = "Images/Offline.ico";
             foreach (KeyValuePair <ShortGuid, ComputerWithConnection> computer in ClientsDictionary)
             {
                 if (computer.Value.ComputerData.macAddresses != null && Listener.CheckMacsInREC(computer.Value.ComputerData.macAddresses, computerData.macAddresses))
                 {
                     computerData.ImageSource = "Images/Online.ico";
                     if (computer.Value.ComputerData.inWinpe)
                     {
                         computerData.ImageSource = "Images/Winpe.ico";
                     }
                     break;
                 }
             }
             machines_lock.Items.Add(computerData);
         }
     }
 }
Ejemplo n.º 2
0
 public static string GetFileNameByMac(string[] computersInfoFiles, List <string> macAddresses)
 {
     lock (computersInfo)
     {
         try
         {
             string filePath = "";
             foreach (string computerFile in computersInfoFiles)
             {
                 var computerData = FileHandler.Load <ComputerDetailsData>(computerFile);
                 if (computerData != null && computerData.macAddresses != null)
                 {
                     if (CheckMacsInREC(computerData.macAddresses, macAddresses))
                     {
                         filePath = computerFile;
                         break;
                     }
                 }
             }
             return(filePath);
         }
         catch (Exception ex)
         {
             MessageBox.Show(ex.ToString());
         }
         return("");
     }
 }
Ejemplo n.º 3
0
        private void ConfigureTemplate()
        {
            var ConfigureTemplateDialog = new ConfigureTemplate();

            ConfigureTemplateDialog.ShowDialog();
            if (!ConfigureTemplateDialog.cancel)
            {
                foreach (ComputerDetailsData computer in listViewMachineGroups.SelectedItems)
                {
                    string pathConfigFile = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + computer.Name + ".cfg";
                    if (File.Exists(pathConfigFile))
                    {
                        var computerConfig = FileHandler.Load <ComputerConfigData>(pathConfigFile);
                        computerConfig.Workgroup = ConfigureTemplateDialog.textBoxNewName.Text;
                        if (computerConfig.Name == "" || computerConfig.Name.Contains("MININT"))
                        {
                            computerConfig.Name = computer.Name;
                        }
                        FileHandler.Save(computerConfig, pathConfigFile);
                    }
                    else
                    {
                        FileHandler.Save(new ComputerConfigData(computer.Name, ConfigureTemplateDialog.textBoxNewName.Text), pathConfigFile);
                    }
                }
            }
        }
Ejemplo n.º 4
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     if (File.Exists(path))
     {
         imageData                   = FileHandler.Load <ImageData>(path);
         textBoxImageName.Text       = imageData.Name;
         textBoxSourcePath.Text      = imageData.SourcePath;
         sliderPartitionDSize.Value  = imageData.PartitionSize;
         checkBoxVHDResize.IsChecked = imageData.VHDResize;
         sliderVHDResizeSize.Value   = imageData.VHDResizeSize;
         foreach (string VHDName in imageData.VHDNames)
         {
             listBoxVHDNames.Items.Add(VHDName);
         }
         textBoxBootLabel.Text = imageData.BoolLabel;
         foreach (string OSAbrivation in imageData.OSAbrivations)
         {
             listBoxOSAbbrivations.Items.Add(OSAbrivation);
         }
     }
     if (!baseImage)
     {
         listBoxOSAbbrivations.IsEnabled = false;
         listBoxVHDNames.IsEnabled       = false;
         sliderPartitionDSize.IsEnabled  = false;
         sliderVHDResizeSize.IsEnabled   = false;
         checkBoxVHDResize.IsEnabled     = false;
     }
 }
Ejemplo n.º 5
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     if (!File.Exists(path))
     {
         FileHandler.Save <MailsData>(mailsData, path);
     }
     mailsData = FileHandler.Load <MailsData>(path);
     if (mailsData == null)
     {
         mailsData = new MailsData();
     }
     foreach (string mail in mailsData.Emails)
     {
         listViewMails.Items.Add(mail);
     }
     if (!File.Exists(pathInActive))
     {
         FileHandler.Save <MailsData>(mailsDataInActive, pathInActive);
     }
     mailsDataInActive = FileHandler.Load <MailsData>(pathInActive);
     if (mailsDataInActive == null)
     {
         mailsDataInActive = new MailsData();
     }
     foreach (string mail in mailsDataInActive.Emails)
     {
         listViewMailsInActive.Items.Add(mail);
     }
 }
Ejemplo n.º 6
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     if (executedTaskData != null)
     {
         executedTaskData = FileHandler.Load <ExecutedTaskData>(executedTaskData.GetFileName());
         foreach (ProgressComputerData progressComputerData in executedTaskData.progressComputerData)
         {
             listViewProgressDetails.Items.Add(progressComputerData);
         }
     }
 }
Ejemplo n.º 7
0
        private void Button_Load_Click(object sender, RoutedEventArgs e)
        {
            var openFileDialog = new OpenFileDialog();

            openFileDialog.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
            if (openFileDialog.ShowDialog() == true)
            {
                config = FileHandler.Load <LastUsedTerminal>(openFileDialog.FileName);
                txtBlockTerminal.Text = string.Join(Environment.NewLine, config.commands.ToArray());
            }
        }
Ejemplo n.º 8
0
        private void SaveComputerData(ComputerDetailsData computerDetailsData)
        {
            string IP = ((IPEndPoint)clientSocket.Client.RemoteEndPoint).Address.ToString();

            computerDetailsData.IPAddress = IP;
            computerData = computerDetailsData;
            var computersInfoFiles = Directory.GetFiles(@".\Machine Groups\", "*.my", SearchOption.AllDirectories);

            clientsAll = computersInfoFiles.Length;
            Application.Current.Dispatcher.Invoke(() =>
            {
                labelAllClients.Content = "Clients: " + clientsAll;
            });
            var filePath = GetFileNameByMac(computersInfoFiles);

            computerConfigData = new ComputerConfigData(computerData.RealPCName, "Workgroup");
            if (filePath != "")
            {
                computerData.Name = Path.GetFileName(filePath).Replace(".my", "");
                FileHandler.Save <ComputerDetailsData>(computerData, filePath);
                if (!File.Exists(filePath.Replace(".my", ".cfg")))
                {
                    FileHandler.Save <ComputerConfigData>(computerConfigData, filePath.Replace(".my", ".cfg"));
                }
                else
                {
                    computerConfigData = FileHandler.Load <ComputerConfigData>(filePath.Replace(".my", ".cfg"));
                }
            }
            else
            {
                computerData.Name = computerData.RealPCName;
                bool exist = false;
                foreach (string computerFile in computersInfoFiles)
                {
                    if (computerFile == @".\Machine Groups\Default\" + computerData.RealPCName + ".my")
                    {
                        exist = true;
                        break;
                    }
                }
                if (!exist)
                {
                    filePath = @".\Machine Groups\Default\" + computerData.RealPCName + ".my";
                }
                else
                {
                    filePath = @".\Machine Groups\Default\" + computerData.RealPCName + "-NEW.my";
                }
                FileHandler.Save <ComputerDetailsData>(computerData, filePath);
                FileHandler.Save <ComputerConfigData>(computerConfigData, filePath.Replace(".my", ".cfg"));
            }
        }
Ejemplo n.º 9
0
 private void RenameItem(ComputerDetailsData oldItem)
 {
     if (oldItem != null)
     {
         string oldPath = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + oldItem.Name;
         if (oldPath == LockPath || oldPath == DefaultPath)
         {
             MessageBox.Show("Cannot rename this folder", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
             return;
         }
         var renameItemDialog = new EditItem();
         renameItemDialog.textBoxNewName.Text  = oldItem.Name;
         renameItemDialog.labelOldName.Content = oldItem.Name;
         foreach (ComputerDetailsData item in listViewMachineGroups.Items)
         {
             if (item.ImageSource == oldItem.ImageSource)
             {
                 renameItemDialog.Names.Add(item.Name);
             }
         }
         renameItemDialog.ShowDialog();
         if (!renameItemDialog.cancel)
         {
             string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + renameItemDialog.textBoxNewName.Text;
             if (oldItem.ImageSource.Contains("Folder"))
             {
                 if (Directory.Exists(path))
                 {
                     Directory.Move(oldPath, path);
                 }
                 treeViewMachinesAndTasksHandler.RenameItem(oldItem.Name, renameItemDialog.textBoxNewName.Text);
             }
             else
             {
                 oldPath += ".my";
                 path    += ".my";
                 ComputerDetailsData machineData = FileHandler.Load <ComputerDetailsData>(oldPath);
                 machineData.Name = renameItemDialog.textBoxNewName.Text;
                 if (File.Exists(oldPath))
                 {
                     File.Move(oldPath, path);
                 }
                 if (File.Exists(oldPath.Replace(".my", ".cfg")))
                 {
                     File.Move(oldPath.Replace(".my", ".cfg"), path.Replace(".my", ".cfg"));
                 }
                 FileHandler.Save <ComputerDetailsData>(machineData, path);
             }
             listViewMachinesAndTasksHandler.Refresh();
         }
     }
 }
Ejemplo n.º 10
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     if (File.Exists(PathOfLastUsed))
     {
         config = FileHandler.Load <LastUsedTerminal>(PathOfLastUsed);
         txtBlockTerminal.Text = string.Join(Environment.NewLine, config.commands.ToArray());
         txtBoxUserName.Text   = config.userName;
         txtBoxPassword.Text   = config.userPassword;
     }
     else
     {
         FileHandler.Save(config, PathOfLastUsed);
     }
 }
Ejemplo n.º 11
0
        private string GetFileNameByMac(string[] computersInfoFiles)
        {
            string filePath = "";

            foreach (string computerFile in computersInfoFiles)
            {
                var computerData = FileHandler.Load <ComputerDetailsData>(computerFile);
                if (CheckMacsInREC(computerData.macAddresses, macAddresses))
                {
                    filePath = computerFile;
                    break;
                }
            }
            return(filePath);
        }
Ejemplo n.º 12
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     taskData = new TaskData();
     if (File.Exists(path))
     {
         taskData = FileHandler.Load <TaskData>(path);
         LoadData();
     }
     else
     {
         LoadNewData();
     }
     labelNumberOfMachines.Content = "Number Of PCs: " + listBoxTargetComputers.Items.Count;
     tabItemGeneral.IsSelected     = true;
 }
Ejemplo n.º 13
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     computerFilePath       = computerPath + ".my";
     computerConfigFilePath = computerPath + ".cfg";
     if (File.Exists(computerFilePath))
     {
         computerData        = FileHandler.Load <ComputerDetailsData>(computerFilePath);
         listBox.ItemsSource = computerData.GetItems();
     }
     if (File.Exists(computerConfigFilePath))
     {
         computerConfigData       = FileHandler.Load <ComputerConfigData>(computerConfigFilePath);
         textBoxComputerName.Text = computerConfigData.Name;
         textBoxWorkGroup.Text    = computerConfigData.Workgroup;
     }
 }
Ejemplo n.º 14
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     if (!File.Exists(path))
     {
         FileHandler.Save <OSAbrivationsData>(osAbrivationsData, path);
     }
     foreach (string OSAbrivation in listBox.Items)
     {
         listBoxOSAbbrivationsOutPut.Items.Add(OSAbrivation);
     }
     osAbrivationsData = FileHandler.Load <OSAbrivationsData>(path);
     foreach (string OSAbrivation in osAbrivationsData.osAbrivations)
     {
         listViewOsAbbrivations.Items.Add(OSAbrivation);
     }
 }
Ejemplo n.º 15
0
        private void RenameItem()
        {
            var oldItem = (ImageData)listView.SelectedItem;

            if (oldItem != null)
            {
                string oldPath          = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + oldItem.Name;
                var    renameItemDialog = new EditItem();
                renameItemDialog.textBoxNewText.Text  = oldItem.Name;
                renameItemDialog.labelOldText.Content = oldItem.Name;
                foreach (ImageData item in listView.Items)
                {
                    if (item.ImageSource == oldItem.ImageSource)
                    {
                        renameItemDialog.Names.Add(item.Name);
                    }
                }
                renameItemDialog.ShowDialog();
                if (!renameItemDialog.cancel)
                {
                    string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + renameItemDialog.textBoxNewText.Text;
                    if (oldItem.ImageSource.Contains("Folder"))
                    {
                        if (Directory.Exists(oldPath))
                        {
                            Directory.Move(oldPath, path);
                        }
                        treeViewMachinesAndTasksHandler.RenameItem(oldItem.Name, renameItemDialog.textBoxNewText.Text);
                    }
                    else
                    {
                        oldPath += ".my";
                        path    += ".my";
                        ImageData imageData = FileHandler.Load <ImageData>(oldPath);
                        imageData.Name = renameItemDialog.textBoxNewText.Text;
                        if (File.Exists(oldPath))
                        {
                            File.Delete(oldPath);
                        }
                        FileHandler.Save <ImageData>(imageData, path);
                    }
                    listViewBrowseImagesHandler.Refresh();
                }
            }
        }
Ejemplo n.º 16
0
 public void LoadTasksDetails()
 {
     Application.Current.Dispatcher.Invoke(() =>
     {
         tasksDetails.Items.Clear();
         if (Directory.Exists(path))
         {
             string[] tasksPath = Directory.GetFiles(path, "*.my");
             foreach (string taskPath in tasksPath)
             {
                 if (File.Exists(taskPath))
                 {
                     tasksDetails.Items.Insert(0, FileHandler.Load <ExecutedTaskData>(taskPath));
                 }
             }
         }
     });
 }
Ejemplo n.º 17
0
        private void ShowBrowseImagesDialog(string path, TextBox textBox, bool baseImage)
        {
            var browseImagesWindows = new BrowseImages();

            browseImagesWindows.path      = path;
            browseImagesWindows.baseImage = baseImage;
            browseImagesWindows.ShowDialog();
            if (browseImagesWindows.pathOutput != "")
            {
                textBox.Text = browseImagesWindows.pathOutput;
                if (path.Contains(@".\Base\"))
                {
                    taskData.BaseImageData = FileHandler.Load <ImageData>(textBox.Text + ".my");
                }
                else
                {
                    taskData.DriveEImageData = FileHandler.Load <ImageData>(textBox.Text + ".my");
                }
            }
        }
 public void LoadTasks(string path)
 {
     tasks.Items.Clear();
     if (Directory.Exists(path))
     {
         var directoriesInfoFiles = Directory.GetDirectories(path);
         foreach (var dir in directoriesInfoFiles)
         {
             tasks.Items.Add(new TaskData(new DirectoryInfo(dir).Name, "", "", new List <ComputerDetailsData>(), "Images/Folder.ico"));
         }
         string[] tasksPath = Directory.GetFiles(path, "*.my");
         foreach (string taskPath in tasksPath)
         {
             if (File.Exists(taskPath))
             {
                 tasks.Items.Add(FileHandler.Load <TaskData>(taskPath));
             }
         }
     }
 }
 public void LoadMachines(string path)
 {
     machines.Items.Clear();
     if (Directory.Exists(path))
     {
         var directoriesInfoFiles = Directory.GetDirectories(path);
         foreach (var dir in directoriesInfoFiles)
         {
             machines.Items.Add(new ComputerDetailsData(new DirectoryInfo(dir).Name, "", "", "", "", "Images/Folder.ico"));
         }
         string[] computersInfoFiles = Directory.GetFiles(path, "*.my");
         foreach (string computerFile in computersInfoFiles)
         {
             string Name         = Path.GetFileName(computerFile).Replace(".my", "");
             var    computerData = FileHandler.Load <ComputerDetailsData>(computerFile);
             computerData.ImageSource = "Images/Offline.ico";
             foreach (ClientHandler client in clients)
             {
                 if (client.macAddresses != null && client.CheckMacsInREC(client.macAddresses, computerData.macAddresses))
                 {
                     computerData.ImageSource = "Images/Online.ico";
                     if (client.inWinpe)
                     {
                         computerData.ImageSource = "Images/Winpe.ico";
                     }
                     break;
                 }
             }
             string lockFilePath = computerFile.Replace(".my", ".lock");
             string detail       = "";
             if (File.Exists(lockFilePath))
             {
                 var lockDetailsData = FileHandler.Load <LockDetailsData>(lockFilePath);
                 detail = lockDetailsData.details;
             }
             machines.Items.Add(computerData);
         }
     }
 }
Ejemplo n.º 20
0
 private void SelectComputers()
 {
     listBoxOut.Items.Clear();
     if (listView.SelectedItems.Count != 0)
     {
         foreach (ComputerDetailsData machineGroupData in listView.SelectedItems)
         {
             if (machineGroupData.ImageSource.Contains("Folder.ico"))
             {
                 foreach (string file in Directory.GetFiles(treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + machineGroupData.Name, "*.my", SearchOption.AllDirectories))
                 {
                     var machine = FileHandler.Load <ComputerDetailsData>(file);
                     listBoxOut.Items.Add(machine);
                 }
             }
             else
             {
                 listBoxOut.Items.Add(machineGroupData);
             }
         }
     }
 }
Ejemplo n.º 21
0
 private void Window_Loaded(object sender, RoutedEventArgs e)
 {
     nodePath = ".\\RDPFiles\\" + new DirectoryInfo(nodePath).Name;;
     if (!Directory.Exists(nodePath))
     {
         Directory.CreateDirectory(nodePath);
     }
     if (File.Exists(RDPLastUsedSettingsPath))
     {
         _RDPLastUsedSettings      = FileHandler.Load <RDPLastUsedSettings>(RDPLastUsedSettingsPath);
         TextBoxGateWay.Text       = _RDPLastUsedSettings.GateWay;
         TextBoxRdsLogin.Text      = _RDPLastUsedSettings.RDSLogin;
         TextBoxRdsPassword.Text   = _RDPLastUsedSettings.RDSPassword;
         TextBoxLocalLogin.Text    = _RDPLastUsedSettings.LocalLogin;
         TextBoxLocalPassword.Text = _RDPLastUsedSettings.LocalPassword;
     }
     else
     {
         _RDPLastUsedSettings = new RDPLastUsedSettings
         {
             GateWay = TextBoxGateWay.Text = gateWayHostName
         };
     }
 }
Ejemplo n.º 22
0
        private void PasteClipBoard()
        {
            string nodePath = treeViewMachinesAndTasksHandler.GetNodePath();

            if (nodePath == LockPath)
            {
                MessageBox.Show("Cannot Paste to Lock folder", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
                return;
            }
            if (machines && listViewMachineGroups.Visibility == Visibility.Visible)
            {
                bool cancel = false;
                if (nodePath != nodePathOld)
                {
                    bool exist = false;

                    foreach (ComputerDetailsData itemClipBoard in clipBoardMachines)
                    {
                        if (cancel)
                        {
                            break;
                        }
                        string oldPath = nodePathOld + "\\" + itemClipBoard.Name;
                        string path    = nodePath + "\\" + itemClipBoard.Name;
                        if (!itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                        {
                            oldPath += ".my";
                            path    += ".my";
                        }
                        for (int i = listViewMachineGroups.Items.Count - 1; i >= 0; i--)
                        {
                            ComputerDetailsData item = (ComputerDetailsData)listViewMachineGroups.Items[i];
                            if (item.Name == itemClipBoard.Name)
                            {
                                exist = true;
                                if (itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                                {
                                    MessageBox.Show("Cannot move folder with same name", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
                                    break;
                                }
                                switch (MessageBox.Show("Replace Item: '" + itemClipBoard.Name + "'", "Warning", MessageBoxButton.YesNoCancel, MessageBoxImage.Warning))
                                {
                                case MessageBoxResult.Yes:
                                {
                                    if (!copy)
                                    {
                                        if (File.Exists(path))
                                        {
                                            File.Delete(path);
                                        }
                                        File.Move(oldPath, path);
                                    }
                                    break;
                                }

                                case MessageBoxResult.No:
                                {
                                    break;
                                }

                                case MessageBoxResult.Cancel:
                                {
                                    cancel = true;
                                    break;
                                }
                                }
                                break;
                            }
                        }
                        if (!exist)
                        {
                            if (!copy)
                            {
                                if (itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                                {
                                    Directory.Move(oldPath, path);
                                }
                                else
                                {
                                    File.Move(oldPath, path);
                                }
                            }
                        }
                    }
                }
                clipBoardMachines.Clear();
            }
            else
            {
                bool cancel = false;
                foreach (TaskData itemClipBoard in clipBoardTasks)
                {
                    if (cancel)
                    {
                        break;
                    }
                    bool   exist   = false;
                    string oldPath = nodePathOld + "\\" + itemClipBoard.Name;
                    string path    = nodePath + "\\" + itemClipBoard.Name;
                    if (!itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                    {
                        oldPath += ".my";
                        path    += ".my";
                    }

                    for (int i = listViewTasks.Items.Count - 1; i >= 0; i--)
                    {
                        TaskData item = (TaskData)listViewTasks.Items[i];
                        if (item.Name == itemClipBoard.Name)
                        {
                            exist = true;
                            if (nodePath == nodePathOld)
                            {
                                if (copy)
                                {
                                    path = path.Replace(".my", "-(1).my");
                                    if (!File.Exists(path))
                                    {
                                        TaskData taskData = FileHandler.Load <TaskData>(oldPath);
                                        taskData.Name = itemClipBoard.Name + "-(1)";
                                        FileHandler.Save <TaskData>(taskData, path);
                                    }
                                }
                            }
                            else
                            {
                                switch (MessageBox.Show("Replace Item: '" + itemClipBoard.Name + "'", "Warning", MessageBoxButton.YesNoCancel, MessageBoxImage.Warning))
                                {
                                case MessageBoxResult.Yes:
                                {
                                    if (copy)
                                    {
                                        if (File.Exists(path))
                                        {
                                            TaskData taskData = FileHandler.Load <TaskData>(oldPath);
                                            FileHandler.Save <TaskData>(taskData, path);
                                        }
                                    }
                                    else
                                    {
                                        if (File.Exists(path))
                                        {
                                            File.Delete(path);
                                        }
                                        File.Move(oldPath, path);
                                    }
                                    break;
                                }

                                case MessageBoxResult.No:
                                {
                                    break;
                                }

                                case MessageBoxResult.Cancel:
                                {
                                    cancel = true;
                                    break;
                                }
                                }
                            }
                            break;
                        }
                    }
                    if (!exist)
                    {
                        if (itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                        {
                            if (!copy)
                            {
                                Directory.Move(oldPath, path);
                            }
                        }
                        else
                        {
                            if (copy)
                            {
                                File.Copy(oldPath, path);
                            }
                            else
                            {
                                File.Move(oldPath, path);
                            }
                        }
                    }
                }
                clipBoardTasks.Clear();
            }
            listViewMachinesAndTasksHandler.Refresh();
        }
Ejemplo n.º 23
0
        private void DeleteItem()
        {
            MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show("Are you sure?", "Delete Confirmation", System.Windows.MessageBoxButton.YesNo);

            if (messageBoxResult == MessageBoxResult.Yes)
            {
                if (listViewMachineGroups.Visibility == Visibility.Visible)
                {
                    for (int i = listViewMachineGroups.SelectedItems.Count - 1; i >= 0; i--)
                    {
                        ComputerDetailsData item = (ComputerDetailsData)listViewMachineGroups.SelectedItems[i];
                        if (item.ImageSource.Contains("Folder"))
                        {
                            string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + item.Name;
                            if (path != LockPath && path != DefaultPath)
                            {
                                var computersInfoFiles = Directory.GetFiles(treeViewMachinesAndTasksHandler.GetNodePath(), "*.my", SearchOption.AllDirectories);
                                foreach (string computerFile in computersInfoFiles)
                                {
                                    var computerData = FileHandler.Load <ComputerDetailsData>(computerFile);
                                    for (int j = listViewMachinesAndTasksHandler.clients.Count - 1; j >= 0; j--)
                                    {
                                        ClientHandler client = listViewMachinesAndTasksHandler.clients[j];
                                        if (client.CheckMacsInREC(client.macAddresses, computerData.macAddresses))
                                        {
                                            client.SendMessage(new Packet(DataIdentifier.CLOSE));
                                            client.deleting = true;
                                            break;
                                        }
                                    }
                                }
                                if (Directory.Exists(path))
                                {
                                    Directory.Delete(path, true);
                                }
                                treeViewMachinesAndTasksHandler.RemoveItem(item.Name);
                            }
                            else
                            {
                                MessageBox.Show("Cannot delete this folder", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
                                return;
                            }
                        }
                        else
                        {
                            string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + item.Name + ".my";
                            for (int j = listViewMachinesAndTasksHandler.clients.Count - 1; j >= 0; j--)
                            {
                                ClientHandler client = listViewMachinesAndTasksHandler.clients[j];
                                if (client.CheckMacsInREC(client.macAddresses, item.macAddresses))
                                {
                                    client.SendMessage(new Packet(DataIdentifier.CLOSE));
                                    client.deleting = true;
                                    break;
                                }
                            }
                            if (File.Exists(path))
                            {
                                File.Delete(path);
                            }
                            if (File.Exists(path.Replace(".my", ".cfg")))
                            {
                                File.Delete(path.Replace(".my", ".cfg"));
                            }
                        }
                    }
                }
                else
                {
                    for (int i = listViewTasks.SelectedItems.Count - 1; i >= 0; i--)
                    {
                        TaskData item = (TaskData)listViewTasks.SelectedItems[i];
                        if (item.ImageSource.Contains("Folder"))
                        {
                            string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + item.Name;
                            if (Directory.Exists(path))
                            {
                                Directory.Delete(path, true);
                            }
                            treeViewMachinesAndTasksHandler.RemoveItem(item.Name);
                        }
                        else
                        {
                            string path = treeViewMachinesAndTasksHandler.GetNodePath() + "\\" + item.Name + ".my";
                            if (File.Exists(path))
                            {
                                File.Delete(path);
                            }
                        }
                    }
                }
                listViewMachinesAndTasksHandler.Refresh();
            }
        }
Ejemplo n.º 24
0
        private void PasteClipBoard()
        {
            string nodePath = treeViewMachinesAndTasksHandler.GetNodePath();

            bool cancel = false;

            foreach (ImageData itemClipBoard in clipBoardImages)
            {
                if (cancel)
                {
                    break;
                }
                bool   exist   = false;
                string oldPath = nodePathOld + "\\" + itemClipBoard.Name;
                string path    = nodePath + "\\" + itemClipBoard.Name;
                if (!itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                {
                    oldPath += ".my";
                    path    += ".my";
                }

                for (int i = listView.Items.Count - 1; i >= 0; i--)
                {
                    ImageData item = (ImageData)listView.Items[i];
                    if (item.Name == itemClipBoard.Name)
                    {
                        exist = true;
                        if (nodePath == nodePathOld)
                        {
                            if (copy)
                            {
                                path = path.Replace(".my", "-(1).my");
                                if (!File.Exists(path))
                                {
                                    ImageData taskData = FileHandler.Load <ImageData>(oldPath);
                                    taskData.Name = itemClipBoard.Name + "-(1)";
                                    FileHandler.Save <ImageData>(taskData, path);
                                }
                            }
                        }
                        else
                        {
                            switch (MessageBox.Show("Replace Item: '" + itemClipBoard.Name + "'", "Warning", MessageBoxButton.YesNoCancel, MessageBoxImage.Warning))
                            {
                            case MessageBoxResult.Yes:
                            {
                                if (copy)
                                {
                                    if (File.Exists(path))
                                    {
                                        ImageData taskData = FileHandler.Load <ImageData>(oldPath);
                                        FileHandler.Save <ImageData>(taskData, path);
                                    }
                                }
                                else
                                {
                                    if (File.Exists(path))
                                    {
                                        File.Delete(path);
                                    }
                                    File.Move(oldPath, path);
                                }
                                break;
                            }

                            case MessageBoxResult.No:
                            {
                                break;
                            }

                            case MessageBoxResult.Cancel:
                            {
                                cancel = true;
                                break;
                            }
                            }
                        }
                        break;
                    }
                }
                if (!exist)
                {
                    if (itemClipBoard.ImageSource.Contains("Folder_Selected.ico"))
                    {
                        try
                        {
                            if (!copy)
                            {
                                Directory.Move(oldPath, path);
                            }
                        }
                        catch { MessageBox.Show("Cannot Move Directory"); return; }
                    }
                    else
                    {
                        if (copy)
                        {
                            File.Copy(oldPath, path);
                        }
                        else
                        {
                            File.Move(oldPath, path);
                        }
                    }
                }
            }
            clipBoardImages.Clear();
            listViewBrowseImagesHandler.Refresh();
        }
Ejemplo n.º 25
0
 private bool SaveControl()
 {
     try
     {
         SetDefaultColors();
         if (textBoxTaskName.Text == "")
         {
             SetErrorMessage(labelTaskName, "'Task Name' cannot be an empty string\n");
             return(false);
         }
         if (textBoxTaskName.Text.IndexOfAny(new char[] { '\\', '/', ':', '*', '?', '"', '<', '>', '|' }) != -1)
         {
             SetErrorMessage(labelTaskName, "'Task Name' cannot contains \\ / : * ? \" < > | \n");
             return(false);
         }
         if (Names.Contains(textBoxTaskName.Text))
         {
             SetErrorMessage(labelTaskName, "'Task Name': " + textBoxTaskName.Text + " exists\n");
             return(false);
         }
         List <string> LockComputers = Directory.GetFiles(@".\Machine Groups\Lock\", "*.my", SearchOption.AllDirectories).ToList();
         foreach (string LockComputer in LockComputers)
         {
             foreach (ComputerDetailsData computer in listBoxTargetComputers.Items)
             {
                 if (LockComputer.Contains(computer.Name + ".my"))
                 {
                     SetErrorMessage(labelMachineGroup, "Computer: " + computer.Name + " is locked\n");
                     return(false);
                 }
             }
         }
         if (checkBoxCloning.IsChecked.Value && textBoxBaseImage.Text == "" && textBoxDriveEImage.Text == "")
         {
             tabItemGeneral.IsSelected = true;
             labelError.Content       += "Cloning is not properly set up\n";
             return(false);
         }
         if (checkBoxCloning.IsChecked.Value)
         {
             if (textBoxBaseImage.Text != "")
             {
                 if (!File.Exists(textBoxBaseImage.Text + ".my"))
                 {
                     labelError.Content += "Base image settings does not exist\n";
                     return(false);
                 }
                 else
                 {
                     taskData.BaseImageData = FileHandler.Load <ImageData>(textBoxBaseImage.Text + ".my");
                     if (!File.Exists(taskData.BaseImageData.SourcePath))
                     {
                         labelError.Content += "Source path of Base wim file does not exist\n";
                         return(false);
                     }
                 }
             }
             if (textBoxDriveEImage.Text != "")
             {
                 if (!File.Exists(textBoxDriveEImage.Text + ".my"))
                 {
                     labelError.Content += "DriveE image settings does not exist\n";
                     return(false);
                 }
                 else
                 {
                     taskData.DriveEImageData = FileHandler.Load <ImageData>(textBoxDriveEImage.Text + ".my");
                     if (!File.Exists(taskData.DriveEImageData.SourcePath))
                     {
                         labelError.Content += "Source path of DriveE wim file does not exist\n";
                         return(false);
                     }
                 }
             }
         }
         return(true);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
         return(false);
     }
 }
Ejemplo n.º 26
0
 private void SaveComputerData(Packet packet, Connection connection)
 {
     try
     {
         var computersInfoFiles = Directory.GetFiles(@".\Machine Groups\", "*.my", SearchOption.AllDirectories);
         clientsAll = computersInfoFiles.Length;
         Application.Current.Dispatcher.Invoke(() =>
         {
             labelAllClients.Content = "Clients: " + clientsAll;
         });
         var filePath = GetFileNameByMac(computersInfoFiles, packet.computerDetailsData.macAddresses);
         packet.computerConfigData = new ComputerConfigData(packet.computerDetailsData.RealPCName, "Workgroup");
         if (filePath != "")
         {
             packet.computerDetailsData.Name = Path.GetFileName(filePath).Replace(".my", "");
             if (filePath.Contains(@".\Machine Groups\Lock"))
             {
                 ComputerDetailsData computer = FileHandler.Load <ComputerDetailsData>(filePath);
                 packet.computerDetailsData.Detail   = computer.Detail;
                 packet.computerDetailsData.pathNode = computer.pathNode;
             }
             FileHandler.Save <ComputerDetailsData>(packet.computerDetailsData, filePath);
             if (!File.Exists(filePath.Replace(".my", ".cfg")))
             {
                 FileHandler.Save <ComputerConfigData>(packet.computerConfigData, filePath.Replace(".my", ".cfg"));
             }
             else
             {
                 packet.computerConfigData = FileHandler.Load <ComputerConfigData>(filePath.Replace(".my", ".cfg"));
             }
         }
         else
         {
             packet.computerDetailsData.Name = packet.computerDetailsData.RealPCName;
             bool exist = false;
             clientsAll++;
             foreach (string computerFile in computersInfoFiles)
             {
                 if (computerFile == @".\Machine Groups\Default\" + packet.computerDetailsData.RealPCName + ".my")
                 {
                     exist = true;
                     break;
                 }
             }
             if (!exist)
             {
                 filePath = @".\Machine Groups\Default\" + packet.computerDetailsData.RealPCName + ".my";
             }
             else
             {
                 filePath = @".\Machine Groups\Default\" + packet.computerDetailsData.RealPCName + "-NEW.my";
             }
             FileHandler.Save <ComputerDetailsData>(packet.computerDetailsData, filePath);
             FileHandler.Save <ComputerConfigData>(packet.computerConfigData, filePath.Replace(".my", ".cfg"));
         }
     }
     catch (Exception ex)
     {
         Application.Current.Dispatcher.Invoke(() =>
         {
             console.Items.Add("PROBLEM LISTENER CHYBA 3: " + ex.ToString());
         });
     }
 }