Zmy111
BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору radeonuser, короче такое дело. Всё работает, кроме одного. После удаления раскладки, он остаётся в памяти всех процессов, которые были загружены до этого момента. Т.е, очень неприятная вещь. В современных WINDOWS процессы находятся в защищённом (изолированном) режиме. Добавить можно, а удалить сложнее. Предположим, работаете вы в блокноте, добавляете язык. Что-то там пишите. Удаляете язык. Язык удаляется из системы, а в адресном пространстве процесса с этим пидом, он ещё присутствует. Он не просто присутствует, а он ещё занимает область памяти, которую предпологалось освободить. Что это значит? Это значит, что когда вы дойдёте своими Ctrl+Shift до языка, который стоит перед удалённым, вы дальше идти не сможете. Ну т.е., процесс видит, что у него в памяти есть язык, он пытается на него переключиться, а этого языка в системе уже не существует. И он его перескочить не может. И так со всеми процессами которые были запущены. Если они были запущены до того, как изменятся системные языки, они никто не будет видеть, что произошло такое глобальное явление. Вот, если хотите я скомпилирую его. Или если у вас есть батники, которые работают с этими XML-ми, то легче их запускать. Например, они лежат в той же папке, просто их запускать на выполнение. Можно запрограммировать, чтобы быстро, после удаления языка запустилась панель "Языки", и нажать "OK". Так обновлятся все потоки. И можно будет дальше нормально работать. | Всего записей: 55 | Зарегистр. 19-09-2016 | Отправлено: 17:58 04-06-2018 | Исправлено: Zmy111, 18:54 04-06-2018 |
|