Перейти к содержимому

Printdialog что это за программа

  • автор:

2.5. Диалоговое окно PrintDialog и PrintPreviewDialog.

Добавьте в форму компонент PrintDialogиз окна с инструментами. Измените его свойствоNameнаprintDialog, а свойствоDocument — наprintDocument.

Создайте обработчик событий «щелчок мышью» для меню Print. Добавьте в него следующий код:

private void printToolStripMenuItem_Click(object sender, EventArgs e)

Теперь, в результате нажатия на пункт меню Print будет появлятся стандартое диалоговое окно печати.

Добавьте в программу разработки Windows Forms компонент PrintPreviewDialog. Присвойте ему имяPreviewDialog, а свойствуDocument— значениеprintDocument. Добавьте и реализуйте обработчик событияclickдля вхождения меню Print Preview

private void printPToolStripMenuItem_Click(object sender, EventArgs e)

2.6. Использование диалоговых окон FontDialog и ColorDialog.

Данное диалоговое окно может использоваться точно так же, как и все предыдущие. В программе разработки Windows Forms это окно можно перенести из окна с инструментами и поместить в форму таким образом, что это приведет к созданию экземпляра FontDialog.

Код, предназначенный для использования FontDialog, может выглядеть следующим образом:

if (fontDialog.ShowDialog() == DialogResult.OK)

Этот код можно поместить в обработчик нажатия на пункт меню.

Диалоговое окно FontDialogвыводится с помощью методаShowDialog(). Если пользователь завершает диалог нажатием кнопки ОК, то этим методом возвращается значениеDialogResult.ОК. Выбранный пользователем шрифт можно определить, воспользовавшись свойствомFontклассаFontDialog; в дальнейшем этот шрифт передается свойствуFontклассаTextbox.

Диалоговое окно выбора цветов ColorDialogможет быть перенесено мышью из окна с инструментами и помещено в программу разработки Windows Forms точно так же, как и другие. МетодShowDialog()будет выводить этот диалог на экран до тех пор, пока не будет нажата кнопка ОК или кнопка Cancel. Узнать, какой цвет выбран пользователем, можно, считав значение свойства color данного диалога, как это продемонстрировано в следующем примере:

if (colorDialog.ShowDialog() == DialogResult.OK)

Этот код можно поместить в обработчик нажатия на пункт меню.

Этим мы примером завершаем рассмотрение стандартных диалоговых окон. Приложение SimpleEditorготово и по своей функциональности приближается к блокноту.

3. Задания

1. Создайте программу, в которой при выборе пункта меню «Калькулятор», появляется диалоговое окно, аналогичное стандартному калькулятору Windows/

2. Создайте программу, в которой при выборе пункта меню появляется диалоговое окно, показанное на рис. 7.15. В соответствии с выбранными радиокнопками при нажатии ОК в рабочей области главного окна программы должно быть нарисован эллипс указанного цвета, возможно закрашенный.

Рис. 7. 15. Диалоговое окно выбора цвета эллипса.

3. Написать программу Simple Editor

4. Предусмотрите возможность для пользователя изменять шрифт текстового окна. Для реализации такой возможности введите новое вхождение основного меню — F&ormat, и субменю Format — &Font. Включите в приложение диалоговое окно FontDialog. Выведите это окно с помощью обработчика событий меню и присвойте выбранный шрифт в качестве значения свойству Font текстового окна. Вам также придется внести изменения в реализацию метода onPrintPage (), которые позволят использовать выбранный шрифт при выводе на печать. В предшествующей реализации нами был создан новый объект Font В методе DrawString() объекта Graphics. В данном случае мы вместо этого используем шрифт объекта textBox1, считывая значение свойства Font. Также необходимо учитывать возможность возникновения проблем, если пользователь выбирает слишком большой шрифт. Чтобы избежать ситуацию, при которой текущая строка будет частично налагаться на другую строку, расположенную ниже или выше, следует внести соответствующие изменения в фиксированное значение, которое использовалось для определения позиции строк по вертикали. Наилучшим способом будет использование в качестве величины, на которую увеличивается вертикальная координата строки, значение размера шрифта: исспользуйте свойство Height класса Font.

5. Включите в приложение возможности изменять цвет шрифта. Добавьте второе подменю во вхождение меню Format — Color. . Добавьте обработчик для данного вхождения меню, в котором осуществляется открытие диалогового окна ColorDialog. Если пользователь нажимает кнопку ОК, присвойте выбранный в окне ColorDialog цвет свойству ForeColor текстового окна. В методе onPrintPage() убедитесь в том, что выбранный цвет используется только в том случае, если принтер поддерживает цветную печать. Проверить, поддерживает ли принтер цветную печать, можно с помощью свойства PageSettings. color аргумента PrintPageEventArgs. Можно создать объект типа кисти того цвета, который используется в текстовом окне, с помощью следующего кода: Brush brush = new SolidBrush(textBoxEdit.ForeColor);Эта кисть может использоваться в качестве аргумента метода DrawString() вместо черной кисти, применявшейся в предыдущем примере.

Настройка и управление печатью

До сих пор все внимание было сосредоточено на двух методах класса PrintDialog: PrintVisual() и PrintDocument(). Это все, что необходимо для получения удовлетворительного вывода на печать, но если нужно управлять настройками принтера и заданиями печати, понадобится еще кое-что. Начальной точкой будет класс PrintDialog().

Поддержка настроек печати

В примерах из предыдущих статей было показано, каким образом класс PrintDialog позволяет использовать принтер и его настройки. Однако если эти примеры будут использоваться для более чем одного вывода на печать, то станет заметной некоторая аномалия. При каждом возврате в диалоговое окно Print восстанавливаются настройки печати по умолчанию. Снова приходится выбирать принтер и полностью настраивать его.

Имеется возможность сохранить эту информацию и повторно использовать ее. Один хороший подход состоит в сохранении PrintDialog как переменной-члена окна. Таким образом, создавать PrintDialog перед каждой новой операцией печати не понадобится — просто будет использоваться существующий объект. Это работает потому, что PrintDialog инкапсулирует выбор принтера и установки принтера через два свойства: PrintQueue и PrintTicket.

Свойство PrintQueue ссылается на объект System.Printing.PrintQueue, который представляет очередь печати для выбранного принтера. PrintQueue также инкапсулирует значительный объем средств для управления принтером и его заданиями.

Свойство PrintTicket ссылается на объект System.Printing.PrintTicket, который определяет настройки для задания печати. Он включает такие детали, как разрешение печати и двусторонняя печать. При желании настройки PrintTicket можно скорректировать программно. Класс PrintTicket даже включает в себя методы GetCmlStream() и SaveTo(), позволяющие сериализовать объект в поток, и конструктор, который позволяет пересоздать объект PrintTicket в потоке. Это интересная опция, когда требуется сохранить определенные настройки принтера между сеансами приложения. (Например, эта возможность пригодилась бы для создания средства «профилей печати».)

До тех пор, пока свойства PrintQueue и PrintTicket остаются согласованными, выбранный принтер и его свойства будут одинаковыми при каждом открытии диалогового окна Print. Поэтому, если нужно многократно создавать диалог PrintDialog, можно просто устанавливать эти свойства, чтобы сохранять пользовательские настройки.

Печать диапазонов страниц

Одно из средств класса PrintDialog пока еще не рассматривалось. Можно позволить пользователю выбирать для печати только подмножество печатного вывода, используя текстовое поле Pages (Страницы) в области Page Range (Диапазон страниц).

Текстовое поле позволяет пользователю указывать группу страниц, вводя начальную и конечную страницы (например, 4-6), или выбрать определенную страницу (например, 4). Оно не позволяет вводить несколько диапазонов страниц (наподобие 1-3,5). Текстовое поле Pages по умолчанию отключено. Чтобы включить его, перед вызовом ShowDialog() нужно установить свойство PrintDialog.UserPageRangeEnabled в true.

Опции Selection (Выделенный фрагмент) и Current Page (Текущая страница) останутся отключенными, потому что они не поддерживаются классом PrintDialog. Установкой свойств MaxPage и MinPage ограничиваются страницы, которые пользователь может выбирать.

После отображения диалогового окна Print можно определить, имеет ли пользователь возможность вводить диапазон страниц, проверив свойство PageRangeSelection. Если в нем указано значение UserPages, значит, диапазон страниц присутствует. Свойство PageRange представляет начальную страницу (PageRange.PageFrom) и конечную страницу (PageRange.PageTo). Код может принимать во внимание эти значения и печатать только запрошенные страницы.

Управление очередью печати

Обычно клиентское приложение обладает ограниченными возможностями взаимодействия с очередью печати. После того, как задание запущено, может понадобиться отобразить его состояние или (редко) предоставить возможность для приостановки, возобновления или отмены задания. Классы печати WPF идут много дальше этого уровня и позволяют строить инструменты, которые могут управлять локальной или удаленной очередями печати.

Классы в пространстве имен System.Printing предлагают поддержку для управления очередью печати. Для выполнения большей части работы служат несколько ключевых классов, которые перечислены в таблице:

Классы управления печатью

Наименование Описание
Представляют компьютер, который предоставляет принтеры или другое устройство. («Другим устройством» может быть принтер с сетевым оборудованием, который служит сервером печати.)
Используя класс PrintServer, можно получать коллекцию объектов PrintQueue для заданного компьютера. Можно также использовать класс LocalPrintServer, унаследованный от PrintServer, который всегда представляет текущий компьютер. Он добавляет свойство DefaultPrintQueue, с помощью которого можно получить (или установить) принтер по умолчанию, и статический метод GetDefaultPrintQueue(), который можно использовать без создания экземпляра LocalPrintServer.
Представляет конфигурированный принтер на сервере печати. Класс PrintQueue позволяет получить информацию о состоянии принтера и управлять его очередью печати. Можно также получить коллекцию объектов PrintQueueJoblnfo для этого принтера.
Представляет задание, которое было отправлено в очередь принтера. Можно получить информацию о его состоянии или удалить его.

Используя эти базовые ингредиенты, можно создать программу, которая инициирует вывод на печать без какого-либо вмешательства пользователя:

PrintDialog dialog = new PrintDialog(); // Выбрать принтер по умолчанию dialog.PrintQueue = LocalPrintServer.GetDefaultPrintQueue(); // Напечатать что-либо dialog.PrintDocument(someDocument, "Автоматическая печать");

Можно также создать и применить объект PrintTicket к PrintDialog, чтобы сконфигурировать другие настройки печати.

Обзор компонента PrintDialog (Windows Forms .NET)

Печать в Windows Forms состоит в основном из использования PrintDocument компонента для печати пользователем. Элемент PrintPreviewDialog управления PrintDialog и PageSetupDialog компоненты предоставляют знакомый графический интерфейс для пользователей операционной системы Windows.

Компонент PrintDialog — это предварительно настроенное диалоговое окно, используемое для выбора принтера, выбора страниц для печати и определения других параметров, связанных с печатью, в приложениях под управлением Windows. Это простое решение для параметров принтера и печати вместо настройки собственного диалогового окна. Пользователям можно предоставить различные варианты печати документов: печать всех страниц, выбранного диапазона страниц или выделенного фрагмента текста. Использование стандартных диалоговых окон Windows помогает создавать приложения, основные функциональные возможности которых хорошо знакомы пользователям. Компонент PrintDialog наследует от класса CommonDialog.

Как правило, создается новый экземпляр PrintDocument компонента и задаются свойства, описывающие печать с помощью PrinterSettings и PageSettings классов. Print Вызов метода фактически выводит документ.

Работа с компонентом

Используйте метод PrintDialog.ShowDialog, чтобы отобразить диалоговое окно во время выполнения. Этот компонент имеет свойства, относящиеся либо к одному заданию печати (класс PrintDocument), либо к параметрам отдельного принтера (класс PrinterSettings). Один из двух, в свою очередь, может совместно использоваться несколькими принтерами.

Метод диалогового окна «Показать» помогает добавить диалоговое окно печати в форму. Компонент PrintDialog отображается в области в нижней части конструктора Windows Forms в Visual Studio.

Как записать входные данные пользователя из PrintDialog во время выполнения

Параметры, связанные с печатью во время разработки, можно задать. Иногда может потребоваться изменить эти параметры во время выполнения, скорее всего, из-за выбора, сделанного пользователем. Данные, введенные пользователем для печати документа, можно захватывать с помощью компонентов PrintDialog и PrintDocument. Ниже показано, как отобразить диалоговое окно печати для документа:

  1. Добавьте в форму компоненты PrintDialog и PrintDocument.
  2. Присвойте свойству Document объекта PrintDialog значение PrintDocument, которое было добавлено в форму.

PrintDialog1.Document = PrintDocument1 
printDialog1.Document = printDocument1; 
If PrintDialog1.ShowDialog() = DialogResult.OK Then PrintDocument1.Print() End If 
// display show dialog and if user selects "Ok" document is printed if (printDialog1.ShowDialog() == DialogResult.OK) printDocument1.Print(); 

Создание заданий печати

Краеугольным камнем процессов печати в Windows Forms является компонент PrintDocument, а если точнее, то событие PrintPage. Написав код для обработки события PrintPage, можно указать, что необходимо напечатать и как. Ниже показано создание задания печати.

  1. Добавьте в форму компонент PrintDocument.
  2. Напишите код для обработки события PrintPage . Вам придется закодировать собственную логику печати. Кроме того, вам придется указать материал для печати. В следующем примере кода в качестве материала в виде красного прямоугольника создается пример рисунка в обработчике PrintPage событий.

Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage e.Graphics.FillRectangle(Brushes.Red, New Rectangle(100, 100, 100, 100)) End Sub 
private void PrintDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) => e.Graphics.FillRectangle(Brushes.Red, new Rectangle(100, 100, 100, 100)); 

Вы также можете написать код для BeginPrint событий и EndPrint событий. Это поможет включить целое число, представляющее общее количество страниц для печати, которое уменьшается по мере печати каждой страницы.

Вы можете добавить компонент в форму PrintDialog, чтобы предоставить пользователям чистый и удобный пользовательский интерфейс. Document Задание свойства PrintDialog компонента позволяет задать свойства, связанные с документом печати, с которым вы работаете в форме.

Дополнительные сведения о специфике заданий печати Windows Forms, в том числе о том, как создать задание печати программным способом, см. в разделе PrintPageEventArgs.

Выполнение заданий печати

Чаще всего текстовые процессоры и другие приложения, связанные с печатью, предоставляют возможность отображения сообщения пользователям о завершении задания печати. Эту функцию можно предоставить в Windows Forms, обрабатывая событие EndPrint компонента PrintDocument.

Для выполнения следующей процедуры необходимо создать приложение на основе Windows с компонентом PrintDocument . Приведенная ниже процедура — это стандартный способ включения печати из приложения на основе Windows. Дополнительные сведения о печати из Windows Forms с помощью PrintDocument компонента см. в статье «Создание заданий печати».

    Установите свойство DocumentName элемента управления PrintDocument.

PrintDocument1.DocumentName = "SamplePrintApp" 
printDocument1.DocumentName = "SamplePrintApp"; 
Private Sub PrintDocument1_EndPrint(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles PrintDocument1.EndPrint MessageBox.Show(PrintDocument1.DocumentName + " has finished printing.") End Sub 
private void PrintDocument1_EndPrint(object sender, System.Drawing.Printing.PrintEventArgs e) => MessageBox.Show(printDocument1.DocumentName + " has finished printing."); 

Совместная работа с нами на GitHub

Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

PrintDialog.exe — ошибки EXE: скачать и устранить неполадки

Файлы EXE, такие как PrintDialog.exe, классифицируются как файлы Executable Application (Windows Executable). Как файл Windows Executable он был создан для использования в Windows 10 от компании Microsoft.

Файл PrintDialog.exe впервые был выпущен для ОС Windows 10 07/29/2015 с Windows 10. Согласно нашим сведениям, это основная и наиболее актуальная версия файла от компании Microsoft.

В этой короткой статье приводятся подробные сведения о файле, шаги по устранению проблем EXE с PrintDialog.exe и список бесплатных загрузок для каждой версии, содержащейся в нашем полном каталоге файлов.

Рекомендуемая загрузка: исправить ошибки реестра в WinThruster, связанные с PrintDialog.exe и (или) Windows.

Совместима с Windows 2000, XP, Vista, 7, 8, 10 и 11

Средняя оценка пользователей

Обзор файла

Сведения о разработчике и ПО
Программа: Windows 10
Разработчик: Microsoft
Программное обеспечение: Windows
Версия ПО: 10
Сведения о файле
Размер файла (байтов): 100776
Дата первоначального файла: 03/18/2017
Дата последнего файла: 03/18/2017
Информация о файле Описание
Дополнительная информация отсутствует.

✻ Фрагменты данных файлов предоставлены участником Exiftool (Phil Harvey) и распространяются под лицензией Perl Artistic.

Что такое сообщения об ошибках PrintDialog.exe?

PrintDialog.exe — ошибки выполнения

Ошибки выполнения — это ошибки Windows, возникающие во время «выполнения». Термин «выполнение» говорит сам за себя; имеется в виду, что данные ошибки EXE возникают в момент, когда происходит попытка загрузки файла PrintDialog.exe — либо при запуске приложения Windows, либо, в некоторых случаях, во время его работы. Ошибки выполнения являются наиболее распространенной разновидностью ошибки EXE, которая встречается при использовании приложения Windows.

In most cases, PrintDialog.exe runtime errors occurring while the program is running will result in the program terminating abnormally. Most of these PrintDialog.exe error messages mean that Windows was either unable to locate this file on startup, or the file is corrupt, resulting in a prematurely-aborted startup process. Generally, Windows will be unable to start without resolving these errors.

К числу наиболее распространенных ошибок PrintDialog.exe относятся:

  • PrintDialog.exe — недопустимое изображение.
  • PrintDialog.exe — ошибка приложения.
  • Не удается найти PrintDialog.exe.
  • Не удается установить PrintDialog.exe.
  • Не удается запустить PrintDialog.exe. Класс не зарегистрирован.
  • Не удается запустить PrintDialog.exe.
  • Не удалось правильно инициализировать PrintDialog.exe.
  • Ошибка файла PrintDialog.exe; файл должен быть закрыт. Приносим извинения за неудобства.
  • Файл PrintDialog.exe не является допустимым приложением Win32.
  • Файл PrintDialog.exe не выполняется.
  • Не удается найти PrintDialog.exe.
  • Ошибка при запуске программы: PrintDialog.exe.
  • Неправильный путь приложения: PrintDialog.exe.
  • Файл PrintDialog.exe отсутствует или поврежден.
  • Windows не удалось запустить — PrintDialog.exe.

Системная ошибка

Не удается запустить программу из-за отсутствия PrintDialog.exe на компьютере. Попробуйте переустановить программу, чтобы устранить эту проблему.

Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.

Поиск причины ошибки PrintDialog.exe является ключом к правильному разрешению таких ошибок. Несмотря на то что большинство этих ошибок EXE, влияющих на PrintDialog.exe, происходят во время запуска, иногда ошибка выполнения возникает при использовании Windows 10. Причиной этого может быть недостаточное качество программного кода со стороны Microsoft, конфликты с другими приложениями, сторонние плагины или поврежденное и устаревшее оборудование. Кроме того, эти типы ошибок PrintDialog.exe могут возникать в тех случаях, если файл был случайно перемещен, удален или поврежден вредоносным программным обеспечением. Таким образом, крайне важно, чтобы антивирус постоянно поддерживался в актуальном состоянии и регулярно проводил сканирование системы.

Как исправить ошибки PrintDialog.exe — 3-шаговое руководство (время выполнения: ~5-15 мин.)

Если вы столкнулись с одним из вышеуказанных сообщений об ошибке, выполните следующие действия по устранению неполадок, чтобы решить проблему PrintDialog.exe. Эти шаги по устранению неполадок перечислены в рекомендуемом порядке выполнения.

Шаг 1. Восстановите компьютер до последней точки восстановления, «моментального снимка» или образа резервной копии, которые предшествуют появлению ошибки.

Чтобы начать восстановление системы (Windows XP, Vista, 7, 8 и 10):

  1. Нажмите кнопку «Пуск» в Windows
  2. В поле поиска введите «Восстановление системы» и нажмите ENTER.
  3. В результатах поиска найдите и нажмите «Восстановление системы»
  4. Введите пароль администратора (при необходимости).
  5. Следуйте инструкциям мастера восстановления системы, чтобы выбрать соответствующую точку восстановления.
  6. Восстановите компьютер к этому образу резервной копии.

Если на этапе 1 не удается устранить ошибку PrintDialog.exe, перейдите к шагу 2 ниже.

Шаг 2. Запустите средство проверки системных файлов (System File Checker), чтобы восстановить поврежденный или отсутствующий файл PrintDialog.exe.

Средство проверки системных файлов (System File Checker) — это утилита, входящая в состав каждой версии Windows, которая позволяет искать и восстанавливать поврежденные системные файлы. Воспользуйтесь средством SFC для исправления отсутствующих или поврежденных файлов PrintDialog.exe (Windows XP, Vista, 7, 8 и 10):

  1. Нажмите кнопку «Пуск» в Windows
  2. В поле поиска введите cmd, но НЕ НАЖИМАЙТЕ ENTER.
  3. Нажмите и удерживайте CTRL-Shift на клавиатуре, одновременно нажимая ENTER.
  4. Появится диалоговое окно запроса разрешения.
  5. В поле нажмите «ДА».
  6. Должен отображаться черный экран с мигающим курсором.
  7. На этом черном экране введите sfc /scannow и нажмите ENTER.
  8. Средство проверки системных файлов (System File Checker) начнет поиск неполадок, связанных с PrintDialog.exe, а также других неполадок с системными файлами.
  9. Для завершения процесса следуйте инструкциям на экране.

Следует понимать, что это сканирование может занять некоторое время, поэтому необходимо терпеливо отнестись к процессу его выполнения.

Если на этапе 2 также не удается устранить ошибку PrintDialog.exe, перейдите к шагу 3 ниже.

Шаг 3. Выполните обновление Windows.

Когда первые два шага не устранили проблему, целесообразно запустить Центр обновления Windows. Во многих случаях возникновение сообщений об ошибках PrintDialog.exe может быть вызвано устаревшей операционной системой Windows. Чтобы запустить Центр обновления Windows, выполните следующие простые шаги:

  1. Нажмите кнопку «Пуск» в Windows
  2. В поле поиска введите «Обновить» и нажмите ENTER.
  3. В диалоговом окне Центра обновления Windows нажмите «Проверить наличие обновлений» (или аналогичную кнопку в зависимости от версии Windows)
  4. Если обновления доступны для загрузки, нажмите «Установить обновления».
  5. После завершения обновления следует перезагрузить ПК.

Если Центр обновления Windows не смог устранить сообщение об ошибке PrintDialog.exe, перейдите к следующему шагу. Обратите внимание, что этот последний шаг рекомендуется только для продвинутых пользователей ПК.

Если эти шаги не принесут результата: скачайте и замените файл PrintDialog.exe (внимание: для опытных пользователей)

Если ни один из предыдущих трех шагов по устранению неполадок не разрешил проблему, можно попробовать более агрессивный подход (примечание: не рекомендуется пользователям ПК начального уровня), загрузив и заменив соответствующую версию файла PrintDialog.exe. Мы храним полную базу данных файлов PrintDialog.exe со 100%-ной гарантией отсутствия вредоносного программного обеспечения для любой применимой версии Windows . Чтобы загрузить и правильно заменить файл, выполните следующие действия:

  1. Найдите версию операционной системы Windows в нижеприведенном списке «Загрузить файлы PrintDialog.exe».
  2. Нажмите соответствующую кнопку «Скачать», чтобы скачать версию файла Windows.
  3. Копировать файл в соответствующий каталог вашей версии Windows:

Windows 10: C:\Windows\PrintDialog\

Если этот последний шаг оказался безрезультативным и ошибка по-прежнему не устранена, единственно возможным вариантом остается выполнение чистой установки Windows 10.

СОВЕТ ОТ СПЕЦИАЛИСТА: Мы должны подчеркнуть, что переустановка Windows является достаточно длительной и сложной задачей для решения проблем, связанных с PrintDialog.exe. Во избежание потери данных следует убедиться, что перед началом процесса вы создали резервные копии всех важных документов, изображений, установщиков программного обеспечения и других персональных данных. Если вы в настоящее время не создаете резервных копий своих данных, вам необходимо сделать это немедленно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *