Всем известно, хотя нет, всем системным администраторам известно, что за отображение языковой панели в Windows XP отвечает файл ctfmon.exe, который по умолчанию прописан в автозагрузке в реестре. Если его убрать из автозагрузки, то и языковая панель сгинет до тех пор, пока не будет запущен ctfmon.exe.
Однако, не так давно у меня на Windows 7, в которой, отродясь в автозагрузке не было никаких ctfmon.exe, исчезла языковая панель. Естественно, как этого ctfmon не было в автозагрузке, так он и не появлялся, хотя в поисках решений на просторах интернета я то и дело натыкался на решение, которое реально работало – это тупо добавить этот файл в автозагрузку. Но ведь в Windows 7 не должно быть так.
Прописав параметр ctfmon со значением ctfmon в ветке HKLM\Software\Microsoft\Windows\CurrentVersion\Run, я на некоторое время успокоился, хотя мне всё так же не давала покоя мысль, что после установки Windows 7 ctfmon не был прописан там. А самое главное, что я не разобрался с вопросом, почему на работе на семерке в автозагрузке нет файла ctfmon, но есть языковая панель.
И сижу я, значит, сегодня за компом, думаю надо добить этот вопрос. Открыл гугл, написал запрос посвященный проблеме ctfmon в Windows 7, и лишь на пятой странице поиска я обнаружил ссылку на форум техподдержки майкрософта, где и увидел настоящий правильный ответ. Оказывается запускается языковая панель планировщиком, в подгруппе Microsoft\Windows\TextServicesFramework есть задача MsCtfMonitor, которая и заменила автозагрузку ctfmon. Тут я вспомнил, что не так давно отключал почти все задания в планировщике, считая их ненужными.
Итог. Хотя, конечно же, принципиальной разницы нет запускать ctfmon из реестра, планировщиком или даже вручную, но дело чести докапаться до истины).