Delete c что это за программа

Функция remove

Функция remove удаляет файл, имя которого указано в параметре fname . Эта операция производится непосредственно с файлом, нет потоков, участвующих в операции удаления.

Параметры:

  • fname
    Cи-строка, содержащая имя файла, который необходимо удалить. Этот параметр должен соответствовать правилам именования файлов в используемой системе, и может включать в себя путь, если система поддерживает его.

Возвращаемое значение

Если файл успешно удален, функция возвращает нулевое значение.
В случае ошибки, возвращается ненулевое значение и макрос ERRNO инициализируется соответствующим кодом ошибки.

Ошибка — числовое значение, представляющее тип сбоя.

Строка, интерпретирующая это значение может быть выведена на стандартный поток ошибок при вызове функции perror .

Пример: исходный код программы

// пример использования функции: remove для удаления файла file.txt #include // для оператора cout #include // для функции remove int main () < if( remove( «file.txt» ) != 0 ) // удаление файла file.txt std::cout

C++. Стираем MBR раздел. Уничтожаем Windows и все данные. Вирус на C++

Пример работы программы

Если файл file.txt существовал до запуска программы, то файл будет удален, и это сообщение будет записано в стандартный вывод:

CppStudio.com
Файл успешно удален

В противном случае, сообщение, похожее на это будет записано на стандартный вывод:

Источник: cppstudio.com

Почему в С++ массивы нужно удалять через delete[]

Заметка рассчитана на начинающих C++ программистов, которым стало интересно, почему везде твердят, что нужно использовать delete[] для массивов, но вместо внятного объяснения – просто прикрываются магическим «undefined behavior». Немного кода, несколько картинок и взгляд под капот компиляторов – всех заинтересованных прошу под кат.

Введение

Может быть, вы не замечали, или даже просто не обращали внимания, но, когда вы пишете код для освобождения памяти, занятой массивами, то вам не приходится писать количество элементов, которые нужно удалить. При этом всё замечательно работает.

int *p = new SomeClass[42]; // Указываем количество delete[] p; // Не указываем количество

Это что, магия? Отчасти – да. Причём разработчики различных компиляторов видят и реализуют её по-разному.

Существует два основных подхода к тому, как компиляторы запоминают количество элементов в массиве:

  • Запись количества элементов перед самим массивом («Over-Allocation»)
  • Хранение количества элементов в обособленном ассоциативном контейнере («Associative Array»)

Over-Allocation

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

Такой указатель ни в коем случае нельзя передавать обычному оператору delete. Скорее всего, он просто удалит первый элемент массива, а остальные оставит нетронутыми. Заметьте, я не просто так написал «скорее всего» – ведь никто не может гарантировать, что произойдёт на самом деле и как дальше будет вести себя ваша программа.

Всё зависит от того, какие объекты находились в массиве и делали ли они что-то важное в своих деструкторах. То есть получаем классическое неопределённое поведение. Согласитесь, это не то, чего вы ожидаете при попытке удалить массив.

Интересный факт: в большинстве реализаций стандартной библиотеки, оператор delete внутри себя просто вызывает функцию free. В случае передачи в неё указателя на массив мы получаем ещё одно неопределённое поведение. Это происходит из-за того, что на входе эта функция ожидает указатель, полученный в результате работы функций calloc, malloc или realloc. А как мы выяснили выше, этого не происходит из-за скрытия переменной в начале массива и сдвига указателя на начало массива.

Чем же отличается оператор delete[]? А он как раз считывает количество элементов в массиве, вызывает деструктор для каждого объекта и уже после этого очищает память (вместе со скрытой переменной).

Если кому будет интересно, то примерно в такой псевдокод превращается конструкция delete[] p; при использовании этой стратегии:

// Получаем количество элементов в массиве size_t n = * (size_t*) ((char*)p — sizeof(size_t)); // Для каждого из них вызываем деструктор while (n— != 0) < p[n].~SomeClass(); >// И наконец подчищаем память operator delete[] ((char*)p — sizeof(size_t));

Этим способом пользуются компиляторы MSVC, GCC и Clang. В этом можно убедиться, взглянув на код работы с памятью в соответствующих репозиториях (GCC и Clang) или воспользовавшись сервисом Compiler Explorer.

Как видно на изображении выше (верхняя часть – код, нижняя – ассемблерный вывод компилятора), я набросал простенький код, в котором объявлена структура и функция для создания массива этих самых структур.

Примечание: пустой деструктор у структуры – это отнюдь не лишний код. Дело в том, что согласно Itanium CXX ABI, для массивов, состоящих из типов с тривиальным деструктором, компилятор должен использовать другой подход к управлению памятью. На самом деле, требований немного больше, и всех их можно посмотреть в разделе 2.7 «Array Operator new Cookies» Itanium CXX ABI. Там же перечислены требования к тому, где и как должна располагаться информация о количестве элементов в массиве.

Что же происходит с точки зрения ассемблера простым языком:

  • cтрока N3: запись требуемого количества памяти (20 байт на 5 объектов + 8 байт на размер массива) в регистр;
  • cтрока N4: вызов оператора new для выделения памяти;
  • cтрока N5: запись количества элементов в начало выделенной памяти;
  • cтрока N6: смещение указателя на начало массива на sizeof(size_t), полученный результат является возвращаемым значением.

К достоинствам этого способа можно отнести его лёгкость в реализации и скорость работы, ну а к недостаткам – то, что он не прощает ошибок с некорректным выбором оператора delete. В лучшем случае – сразу получите падение программы с ошибкой «Heap Corrupt», а в худшем – будете долго и мучительно искать причины странного поведения программы.

Читайте также:
Отчет на xiaomi что это за программа и нужна ли она

Associative Array

Второй способ подразумевает существование скрытого глобального контейнера, в котором хранятся указатели на массивы и сколько элементов они содержат. В таком случае перед массивами нет никаких скрытых данных, а вызов delete[] p; реализуется примерно вот так:

// Получаем размер массива из скрытого глобального хранилища size_t n = arrayLengthAssociation.lookup(p); // Вызываем деструкторы для каждого элемента while (n— != 0) < p[n].~SomeClass(); >// Очищаем память operator delete[] (p);

Что ж, выглядит не так «магически», как прошлый вариант. Есть ли ещё какие различия? Да.

Кроме уже упомянутого отсутствия скрытых данных перед массивом, мы получаем небольшое замедление работы из-за необходимости поиска данных в глобальном хранилище. Но компенсируем это тем, что программа может более снисходительно относиться к неверному выбору оператора delete.

Данный подход использовался в компиляторе Cfront. Останавливаться на его реализации мы не будем, но если кому интересно покопаться во внутренностях одного из первых C++ компиляторов, то сделать это можно на GitHub.

Мини-послесловие

Всё вышеописанное является внутренней кухней компиляторов, и полагаться на то или иное поведение не стоит. Особенно это касается случаев, когда планируется портирование программы на разные платформы. Благо что есть несколько вариантов как можно избежать данного класса ошибок:

  • Использовать семейства функций std::make_*. Например: std::make_unique, std::make_shared.
  • Использовать средства статического анализа для раннего выявления ошибок, например PVS-Studio.

Если же вас заинтересовала тема неопределённого поведения и особенностей работы компиляторов, то могу посоветовать ещё парочку дополнительных материалов:

  • PVS-Studio. Лекция 11. Неопределённое поведение, или как выстрелить себе в ногу
  • Что каждый программист на C должен знать об Undefined Behavior. Часть 1/3
  • Что каждый программист на C должен знать об Undefined Behavior. Часть 2/3
  • Что каждый программист на C должен знать об Undefined Behavior. Часть 3/3
  • Блог компании PVS-Studio
  • Программирование
  • C++

Источник: habr.com

Оператор delete (C++)

Аргумент приведения выражения должен быть указателем на блок памяти, ранее выделенный для объекта, созданного с помощью нового оператора. Оператор delete имеет результат типа void и, следовательно, не возвращает значение. Пример:

CDialog* MyDialog = new CDialog; // use MyDialog delete MyDialog;

Использование delete указателя на объект, не выделенный с непредсказуемыми new результатами. Однако можно использовать delete указатель со значением 0. Эта подготовка означает, что при new возвращении 0 при сбое удаление результата неудачной new операции безвредно. Дополнительные сведения см . в разделе «Новые и удаленные операторы».

Операторы new и delete операторы также можно использовать для встроенных типов, включая массивы. Если pointer ссылается на массив, поместите пустые скобки ( [] ) перед pointer :

int* set = new int[100]; //use set[] delete [] set;

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

Когда delete используется для освобождения памяти для объекта класса C++, деструктор объекта вызывается до освобождения памяти объекта (если объект имеет деструктор).

Если операнд delete оператору является изменяемым l-значением, его значение не определено после удаления объекта.

Если указан параметр компилятора /sdl (включение дополнительных проверок безопасности), операнд delete оператору присваивается недопустимое значение после удаления объекта.

Использование оператора delete

Существует два синтаксических варианта для оператора delete: один для отдельных объектов, а другой для массивов объектов. В следующем фрагменте кода показано, как они отличаются:

// expre_Using_delete.cpp struct UDType < >; int main() < // Allocate a user-defined object, UDObject, and an object // of type double on the free store using the // new operator. UDType *UDObject = new UDType; double *dObject = new double; // Delete the two objects. delete UDObject; delete dObject; // Allocate an array of user-defined objects on the // free store using the new operator. UDType (*UDArr)[7] = new UDType[5][7]; // Use the array syntax to delete the array of objects. delete [] UDArr; >

В следующих двух случаях возникают неопределенные результаты: использование формы массива удаления ( delete [] ) для объекта и использование неаррейской формы удаления в массиве.

Пример

Примеры использования delete см. в разделе «Новый оператор».

Принцип работы delete

Оператор delete вызывает удаление оператора функции.

Для объектов, не относится к типу класса (классу, структуре или объединению), вызывается глобальный оператор удаления. Для объектов типа класса имя функции освобождения разрешается в глобальной области, если выражение delete начинается с оператора разрешения унарной области ( :: ). В противном случае перед освобождением памяти оператор удаления вызывает деструктор объекта (если указатель не имеет значения null). Оператор удаления можно определять отдельно для каждого класса; если для некоторого класса такое определение отсутствует, вызывается глобальный оператор удаления. Если выражение удаления используется для освобождения объекта класса, статический тип которого имеет виртуальный деструктор, функция освобождение разрешается через виртуальный деструктор динамического типа объекта.

Источник: learn.microsoft.com

Что можно удалять с диска С, а что нельзя?

Свободное пространство диска С в процессе эксплуатации Windows постоянно сокращается. В независимости от действий пользователя — хочет он того или нет. Временные файлы, архивы, куки и кеш браузеров и прочие программные элементы, выполнив свою единоразовую миссию (обновление, установка, распаковка), оседают в папках раздела С. Плюс к этому — полезные мегабайты и гигабайты поглощают некоторые функциональные модули Windows.

Первое средство от такого «захламления» — комплексная очистка диска С. Выполнять её нужно регулярно и своевременно. В противном случае, раздел переполнится, и вы не сможете полноценно пользоваться ОС и, соответственно, ПК. Windows будет постоянно прерывать вашу работу предупреждающими сообщениями — «недостаточно памяти». Станет невозможен просмотр видео онлайн, так как браузер не сможет сохранять на компьютере закачиваемый с сервера контент. Могут произойти и другие неприятности.

Приступая к очистке диска С: что нужно знать и делать

Удаление с диска С всяких ненужных элементов — процедура весьма деликатная. Требует от пользователя повышенной осторожности, внимания. «Уборка» не должна навредить ОС.

Противопоказано удаление файлов в папках:

  • Windows (сердце ОС — здесь хранятся все её составляющие);
  • Boot (загрузочные файлы системы);
  • ProgramData (целиком нельзя! могут не запускаться установленные приложения);
  • ProgramFiles (проинсталлированное ПО);
  • Users (пользовательские данные).

Некоторые папки, в которых необходимо «наводить чистоту», по умолчанию скрыты, то есть не отображаются в директориях. Чтобы добраться до них, выполните следующее:

1. Нажмите одновременно комбинацию клавиш — «Win + E».
2. В окне «Компьютер» нажмите клавишу «Alt».

3. Вверху окна появится горизонтальное меню. Наведите курсор на раздел «Сервис». В подменю кликните «Параметры папок. ».
4. В настройках параметров перейдите на вкладку «Вид».
5. Прокрутите до конца список опций в разделе «Дополнительные параметры:».
6. Уберите галочку напротив «Скрывать защищённые системные. ». Включите кликом мыши радиокнопку «Показывать скрытые файлы. ».

Читайте также:
Метод post что это за программа

С чего начать уборку диска С?

Первым делом, необходимо освободить корзину:

  • наведите курсор на её иконку;
  • нажмите правую кнопку мышки;
  • в меню выберите «Очистить корзину».

Большие, маленькие файлы, в независимости от того, в каком разделе хранятся (диск D, E или С), после удаления отправляются в C:RECYCLER, файл «Корзина». Вследствие чего, свободное место системного раздела уменьшается. Удаление большого видеофайла или образа (например, файла iso) при дефиците лишних гигабайт, может запросто привести к переполнению диска С.

Совет! Перед тем, как очистить корзину, просмотрите рабочий стол на предмет ненужных ярлыков. Их размеры не велики, но чем меньше будет бесполезных файлов, тем лучше.

Очистка диска штатной утилитой Windows

1. Кликните иконку «Пуск».
2. В правой колонке нажмите «Компьютер».
3. Кликните правой кнопкой по иконке диска С. В меню выберите «Свойства».
4. В панели свойств, на вкладке «Общие», нажмите кнопку «Очистка диска».

5. Подождите немного, пока система проверит директории на наличие ненужных файлов.
6. Далее, в разделе «Удалить следующие файлы», выберите какие элементы удалить, а какие — оставить (проставьте галочки).

7. Нажмите «Очистить системные файлы», а потом — «OK».

Примечание. Применением данной утилиты можно ограничиться, если в системе не наблюдается сильных «засорений». Когда требуется расчистить 2, 3, 5 и больше Гб, необходимо выполнить ещё несколько процедур, которые включают в себя не только удаление отдельных файлов, но и изменение настроек ОС.

Удаление ненужных файлов из системных папок

Довольно часто, пользователи, сами того не ведая, «складывают» контент и ПО в специальные папки ОС, предназначенные для хранения разнообразной информации: «Загрузки», «Изображения», «Мои видеозаписи» и т.д. Многие программы и браузеры по умолчанию (без изменения первоначальных настроек) отправляют данные именно в эти директории.

Откройте их поочерёдно и удалите всё ненужное. Файлы, представляющие для вас особую ценность, перенесите в логический раздел (например, диск D, E).

Совет! Действуйте смело. Здесь можно удалить любой элемент, и Windows от этого не пострадает.

Папка «Temp»

Одна из главных источников засорения ОС. В ней размещают свои элементы антивирусы, драйвера, приложения, игры. Происходит это во время обновлений и инсталляций. После завершения задач, отработанные файлы так и остаются в «Temp». Конечно же, их оттуда нужно периодически убирать.

1. На диске С зайдите в папку «Пользователи».
2. Кликните папку с именем своей учётной записи (имя пользователя).
3. Затем перейдите в «AppData».
4. В директории «Local», откройте папку «Temp».
5. Полностью очистите её (отправьте все файлы/папки в корзину).

Совет! Если вы пользуетесь файловым менеджером «Total Commander»: создайте новую вкладку (сочетание клавиш «Ctrl» + «стрелочка вверх») и перейдите в папку Temp. Таким образом, у вас будет всегда на виду её содержимое.

Отключение файла подкачки

Pagefile.sys — виртуальная память ОС. Когда заканчиваются ресурсы RAM (оперативной памяти), система сохраняет невместившиеся данные в этот файл. Если на вашем ПК объём RAM превышает 4,6 или 8 Гб, контейнер «Pagefile.sys» можно отключить. На диске он занимает примерно такой же объём, как и оперативная память. Например, если в конфигурации вашего ПК, RAM составляет 16 Гб, то Pagefile.sys будет примерно таким же.

Чтобы отключить файл подкачки:
1. Через «Пуск» (иконка «Win») откройте «Панель управления».
2. В разделе «Система и безопасность» выберите «Система».
3. В окне настроек кликните «Дополнительные параметры. ».
4. В панели «Свойства системы», на вкладке «Дополнительно», нажмите «Параметры».
5. В опции «Параметры быстродействия», на вкладке «Дополнительно», в разделе «Виртуальная память», активируйте «Изменить. ».

6. В окне «Виртуальная память»:

  • выберите диск С;
  • включите кликом радиокнопку «Без файла подкачки»;
  • нажмите кнопку «Задать», а потом — «OK».

7. Перезагрузите ПК.

Отключения гибернации

Гибернация — разновидность спящего режима: когда пользователь в течение определённого промежутка времени бездействует, ОС сохраняет все настройки в специальный файл hiberfil.sys. Windows также, как и для Pagefile.sys, резервирует для него свободное пространство на С, равное объёму RAM.

Поэтому, если вы не пользуетесь режимом гибернации, его лучше отключить.

1. Нажмите «Win + R».
2. Введите «CMD», нажмите «ENTER».
3. В консоли командной строки введите — «powercfg -h off» (без кавычек), далее — «ENTER».
4. Перезапустите ОС.

Применение сторонних утилит

Уборку диска С можно запросто «поручить» специальной программе-уборщику, например, CCleaner. Она умеет автоматически очищать корзину, дампы памяти, буфер обмена, удалять временные файлы (куки и кеш) популярных браузеров, а также выполнять множество других операций по удалению системного «хлама».

Всегда контролируйте объём диска С. Не допускайте его переполнения. Выполняйте удаление ненужных файлов не только в целях освобождения дискового пространства, но и для профилактики.

Успехов! Пусть ваш ПК хранит только полезную информацию.

Источник: zavod-mc.ru

Почему не удаляется программа с компьютера?

Довольно часто многие пользователи сталкиваются с такой ситуацией, что у них почему-то не удаляется программа с компьютера. И, разумеется, почему-то не помогают такие утилиты, как: Unlocker, Ccleaner, Revo Uninstaller и другие подобные утилиты для удаления программ. Поэтому в этой статье давайте попробуем разобраться, что мы будем делать, если все вышеупомянутые программы нам не помогли.

Почему не удаляется программа с компьютера?

Многие пользователи в случае неудачи с удалением какой-либо программы со своего компьютера даже пытаются переустанавливать операционную систему, если дело касается их любимой игры. Поверьте мне, в большинстве случаев этого делать не нужно. Дело кстати, ещё и в накоплении мусора в Windows, ведь остатки программы где-то находятся и занимают место на жёстком диске. Всё это довольно неприятно и конечно хочется узнать, где именно находятся оставшиеся файлы программы.

Происходит такая неприятность из-за нарушившейся, по каким-то причинам, связи между программой и её ключами в реестре. Причин этих много, начиная от неправильных действий пользователя и ошибок самой программы. Останавливаться мы на этом не будем. Для решения подобных проблем, нам нужно будет вручную внести изменения в реестр, и наша программа удалится полностью. Теперь давайте разберем, как это сделать.

Внимание! Все операции в реестре выполняйте очень аккуратно!

Читайте также:
Для чего нужна программа инструктажа

Заходим в реестр: Пуск –> Выполнить –> вводим команду: regedit . Далее заходим в раздел: HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Windows -> CurrentVersion -> Uninstall. Именно здесь находится большое количество ключей реестра, отвечающих за каждую программу. Найдите тот ключ, который соответствует имени вашей программы, удалите его и после этого сможете заново переустановить эту программу. Если Вы боитесь это делать или Вы вообще не нашли названия своей программы читайте дальше.

Давайте рассмотрим пример удаления компьютерной игры Call of Duty 4. Что касается этой игры, то её можно удалить через меню «Установка и удаление программ» в Панели управления.

Однако, если Вы испытываете сложности с таким видом удаления, то лучше используйте специальный деинсталлятор, удаляющий игру, который должен находится на установочном диске вместе с игрой. Если такой диск есть, вставляем его в дисковод, запускаем и видим пункт «Удалить», нажимаем его и игра удаляется. После этого мы можем вновь установить игру на свой компьютер. Если у Вас такого диска нет, то пробуем первый способ – это удаление через Панель управления или читаем далее.

Рассмотрим еще один пример, в котором не могли установить программу LoviVkontakte, из-за неправильного удаления.

  • Во-первых, при удалении всегда используйте встроенную в ОС Windows утилиту Установка и удаление программ.
  • Нельзя удалять любую программу, простым удалением её из папки Program Files, которая находится в корневой директории системного раздела, например диска (С:). Потому что вместе с папкой программы Вы удалите, находящийся в ней специальный деинсталлятор, в большинстве случаев он называется Uninstall.exe, предусмотренный разработчиками почти каждой программы, на случай правильного самоудаления.
  • Если Вы всё сделали правильно, но программа не удаляется, то убедитесь, что заходите в операционную систему в качестве Администратора.
  • Удалите программу из Автозагрузки и перезагрузитесь.

Далее необходимо завершить сам процесс в Диспетчере задач, который относится к удаляемой программе, если Вы его знаете.

Далее необходимо отключить службу, которая относится к удаляемой программе в Управлении компьютером.

Теперь удаляйте все файлы, относящиеся к программе с вашего компьютера, начиная с её личной папки, находящаяся в папке Program Files. После этого перезагрузите компьютер, и если программа не удалилась и заново её невозможно установить, то придётся удалять её записи в реестре.

Заходим в реестр, Пуск -> Выполнить -> команда: regedit . Внимание, производить изменения в реестре нужно со знанием дела. Если Вы в себе не уверены, то перед работой можно сделать резервную копию реестра.

Найдите в реестре параметр HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Windows -> CurrentVersion -> Uninstall. Там находятся ключи реестра, отвечающие за удаление всех программ. Находим ключ соответствующий названию вашей программы, если названия вашей программы здесь нет, тогда используем «Поиск», как показано на рисунке. Вводим имя нашей программы, которую хотим удалить, и нажимаем пункт «Найти».

Далее удаляем все найденные ключи, — они будут выделены.

Желательно просмотреть полностью весь реестр или ветви раздела HKEY_LOCAL_MACHINE (содержит информацию о железе и программном обеспечении) и раздела HKEY_CURRENT_USERSoftware, где находится вся информация об установленных приложениях.

И так… Что ещё можно предпринять при решении вопроса, почему не удаляется программа?

  • Попытайтесь посетить сайт производителя программы. Большая вероятность, что там доступен к скачиванию специальный деинсталлятор, например на сайте программы Nero, которую не так просто удалить, присутствует такая утилита.
  • Если Вы удаляете безуспешно компьютерную игру или программу, деинсталлятор может находиться на установочном диске. Просто нужно запустить его и Вы увидите пункт «Удалить». Если такого диска у Вас нет, тогда читаем дальше.
  • В особо сложных случаях, Вам придётся заходить в Вашу операционную систему в «Безопасном режиме». Только в этом режиме удастся отключить службу и удалить все оставшиеся файлы и ключи реестра от Вашей удаляемой программы.
  • Иногда бывает так, что не удаляется программа или файлы программы даже в «Безопасном режиме». В этом случае необходимо переименовать их и после перезагрузки ПК, удалить их.
  • Стоит попытаться заново установить программу, а затем она успешно удалится.

Теперь давайте для наглядности вновь вернемся к нашей ранее упомянутой компьютерной игре Call of Duty 4: Modern Warfare и попробуем её удалить и переустановить.

  • В игре Call of Duty 4: Modern Warfare заходим в меню «Установка и удаление программ» и нажимаем удалить. Если игрушка не удаляется и выходит ошибка, значит читаем далее.
  • Идём в личную папку компьютерной игрушки, Activision ->Call of Duty 4 — Modern Warfare — Modern Warfare. Она находится там, куда мы её устанавливали, обычно это диск C:Program Files. И конечно никакого деинсталлятора для удаления игры там не находим.
  • Далее вставляем в привод диск с игрой, запускаем его и видим пункт «Удалить», нажимаем и удаляем, а уже затем устанавливаем игру заново.
  • Если такого диска у Вас нет и деинсталлятора тоже нет, то в этом случае придется удалить личную папку игры по адресу C:Program FilesActivisionCall of Duty 4 — Modern Warfare. Далее через «Поиск» ищем на всём жёстком диске все файлы нашей игры. Также в папке «Мои документы» Вы можете найти папку с сохранениями этой игры, её также не забываем удалить.
  • Далее заходим в реестр и работаем осторожно, ничего лишнего не удаляем. Лучше сначала сделать резервную копию реестра, а лучше всего сделать резервную копию всего раздела, на котором у вас установлена операционная система, например с помощью программы Acronis. Затем в реестре заходим на ветку HKEY_LOCAL_MACHINE ->SOFTWARE ->Microsoft ->Windows ->CurrentVersion ->Uninstall, тут находятся ключи реестра, отвечающие за каждую программу. Если названия нашей игры здесь нет, тогда используем поиск; вводим имя нашей программы и нажимаем «Найти».

После того как программа поиска найдет все ключи от программы, удаляем их.

Так же можете просмотреть в реестре ветку HKEY_LOCAL_MACHINE, содержащую информацию о программном обеспечении и ветку HKEY_CURRENT_USERSoftware, там содержится информация об установленных приложениях. Если там найдёте ключи с названием вашей игры или программы, удаляйте их, затем перезагружайтесь, а после этого устанавливаем игру или программу заново.

На этом всё! Вот так вот, долго и «муторно» удаляются те программы, которые не хотят удаляться из Вашего компьютера обычными средствами и методами. Зато, теперь и Вы будете знать, как всё это делается. Всем пока! Удачи!

Источник: procomputery.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru