Example #1
0
 private int GetIndexOfItemFromList(ListView listView)
 {
     try
     {
         for (int i = listView.Items.Count - 1; i >= 0; i--)
         {
             ProgressComputerData item = (ProgressComputerData)listView.Items[i];
             if (item.Task_ID == executedTaskData.GetFileName())
             {
                 if (item.ComputerName == computer.Name)
                 {
                     if (item.MacAddress == "")
                     {
                         return(i);
                     }
                     else
                     {
                         if (item.MacAddress == computer.MacAddress)
                         {
                             return(i);
                         }
                     }
                 }
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
     return(-1);
 }
Example #2
0
 private void ChangeProgressData(string _step)
 {
     try
     {
         step = _step;
         Application.Current.Dispatcher.Invoke(() =>
         {
             progressComputerData = new ProgressComputerData("", computer.Name, step, executedTaskData.GetFileName(), "", computer.MacAddress);
             int index            = GetIndexOfItemFromList(listViewAll);
             if (index != -1)
             {
                 listViewAll.Items[index] = progressComputerData;
             }
             index = GetIndexOfItemFromList(listViewSelected);
             if (index != -1)
             {
                 listViewSelected.Items[index] = progressComputerData;
             }
         });
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Example #3
0
 public void Failed(string Message = "Expired waiting time")
 {
     try
     {
         if (!failed && !stopped)
         {
             failed = true;
             if (stopped)
             {
                 progressComputerData = new ProgressComputerData("Images/Stopped.ico", computer.Name, stepDataIdentifier1.ToString(), executedTaskData.GetFileName(), Message, computer.MacAddress);
             }
             else
             {
                 progressComputerData = new ProgressComputerData("Images/Failed.ico", computer.Name, stepDataIdentifier1.ToString(), executedTaskData.GetFileName(), Message, computer.MacAddress);
             }
             SaveProgress();
         }
         if (tCP_UNICAST != null)
         {
             tCP_UNICAST.DestroyConnection();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Example #4
0
 private void CheckFlags(FLAG _stepDataIdentifier1, Packet packet, FLAG _stepDataIdentifier2 = FLAG.CLOSE, int WaitingTime = 5000)
 {
     try
     {
         stepDataIdentifier1 = _stepDataIdentifier1;
         stepDataIdentifier2 = _stepDataIdentifier2;
         receivePacket.ID    = FLAG.Null;
         ChangeProgressData(stepDataIdentifier1.ToString());
         try
         {
             if (connection != null)
             {
                 SendMessage(packet, connection);
             }
         }
         catch
         {
             connection = null;
         }
         Thread.Sleep(1000);
         while (receivePacket.ID != stepDataIdentifier1 && receivePacket.ID != stepDataIdentifier2 && !stopped)
         {
             if (stopped || failed)
             {
                 return;
             }
             try
             {
                 if (connection != null)
                 {
                     SendMessage(packet, connection);
                 }
             }
             catch
             {
                 connection = null;
             }
             if ((receivePacket.ID == FLAG.SYN_FLAG || receivePacket.ID == FLAG.SYN_FLAG_WINPE) && (receivePacket.ID != stepDataIdentifier1 || receivePacket.ID != stepDataIdentifier2))
             {
                 cloneFaildMessage = "CLIENT NEED RESTART";
                 restart           = true;
                 return;
             }
             Thread.Sleep(WaitingTime);
         }
         if (!failed && !stopped)
         {
             progressComputerData = new ProgressComputerData("Images/Done.ico", computer.Name, receivePacket.ID.ToString(), executedTaskData.GetFileName(), "", computer.MacAddress);
         }
         SaveProgress();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Example #5
0
 private void SaveProgress(ProgressComputerData progress)
 {
     if (progress.Step != "Null")
     {
         semaphoreForSaveFile.WaitOne();
         executedTaskData.progressComputerData.Add(progress);
         FileHandler.Save(executedTaskData, executedTaskData.GetFileName());
         semaphoreForSaveFile.Release();
     }
 }
Example #6
0
 private int GetIndexOfItemFromList(ListView listView)
 {
     for (int i = listView.Items.Count - 1; i >= 0; i--)
     {
         ProgressComputerData item = (ProgressComputerData)listView.Items[i];
         if (item.ComputerName == computer.Name && item.MacAddress == computer.MacAddress)
         {
             return(i);
         }
     }
     return(-1);
 }
Example #7
0
        public void RemoveFromListViewSelected()
        {
            int index = GetIndexOfItemFromList(listViewSelected);

            if (index != -1)
            {
                Application.Current.Dispatcher.Invoke(() =>
                {
                    ProgressComputerData item = (ProgressComputerData)listViewSelected.Items[index];
                    listViewSelected.Items.Remove(item);
                });
            }
        }
Example #8
0
 public void RemoveFromListViewSelected()
 {
     try
     {
         int index = GetIndexOfItemFromList(listViewSelected);
         if (index != -1)
         {
             Application.Current.Dispatcher.Invoke(() =>
             {
                 ProgressComputerData item = (ProgressComputerData)listViewSelected.Items[index];
                 listViewSelected.Items.Remove(item);
             });
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Example #9
0
 private void CloningImage()
 {
     if (taskData.Cloning)
     {
         if (!RunAndWait(ClientToWinpe))
         {
             Failed();
             return;
         }
         Configuration();
         if (!RunAndWait(SendTaskDataFile))
         {
             Failed();
             return;
         }
         if (!RunAndWait(ClientStartCloning))
         {
             Failed();
             return;
         }
         WaitForCloningDone();
         if (receivePacket.ID == FLAG.RESTART || receivePacket.ID == FLAG.SYN_FLAG_WINPE || restart)
         {
             progressComputerData = new ProgressComputerData("Images/Failed.ico", computer.Name, "RESTART CLONNIG", executedTaskData.GetFileName(), cloneFaildMessage, computer.MacAddress);
             SaveProgress();
             return;
         }
         SoftwareAndFileActionsWinPE();
         if (!RunAndWait(ClientToOperatingSystem))
         {
             Failed();
             return;
         }
     }
     else
     {
         SoftwareAndFileActionsWinPE();
     }
 }