Программное обеспечение

Почему ярлык имеет такой адрес %windir%\system32\charmap.exe? Как это понять?

%windir%
Эта переменная указывает на каталог Windows (в операционных системах на базе Windows NT она идентична переменной% SystemRoot%. Если система находится на диске C :, то значения по умолчанию: «C: \ WINDOWS» в Windows 95, Windows 98, Windows Me, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 и Windows 7
Гоша
Гоша
27 441
Лучший ответ
"charmap.exe" относится к системным файлам Microsoft Windows. Многие вредоносные программы для самомаскировки используют имена файлов системных процессов. Относитесь с подозрением к любому файлу с системным именем, который находится не в системной папке или содержит неверную информацию о версии. Корректный системный файл содержит полную информацию о версии от Microsoft.
Радель Ка
Радель Ка
61 556
C:\WINDOWS проще говоря, если по дефолту.
https://superuser.com/questions/855615/what-is-windir
Ответ из нета:
Ярлыки в Windows используют абсолютные пути. То есть вроде бы, как-то, вооружившись идеальным английским и накачанным виагрой напильником для реестра, можно заставить их понимать пути относительные. По слухам. Но реальность такова, что использовать ярлыки на флешке, или в какой-то структуре папок, которая может менять свое местоположение, нельзя. Это понятно: если мы задали путь E:\папка, а на другом компьютере наш флеш-драйв поимел букву диска уже M, то путь неверен, и ничего тут не попишешь. Какие решения? Их, в общих чертах, два: использовать сторонние лончеры или командные файлы. Первое решение недостаточно гибко, да и не встречал я еще лончера, такого, чтобы ах, а второе… Не терплю мигающие окна, которые неизбежно порождает интерпретатор cmd.exe. Неаккуратненько как-то. Можно и этот риф обойти, но опять громоздить сторонние программы, опять в гамаке и стоя. Ах, да - есть еще vb и js скрипты. Да, это посимпатичней. Но все-таки.
Однако человеческий гений, как известно, не только гнет взглядом сталь, но, поднатужившись, может даже воздерживаться от алкоголя весь вечер. Решение состоит в вызове функции соответствующей библиотеки. Поскольку библиотеки (dll) сами по себе из командной строки не вызываются, следует использовать команду (имя программы, на самом деле) rundll32. То есть вы создаете обычный ярлык, в строке запуска (поле Объект в свойствах) которого пишете строку вида: %windir%\system32\RunDll32.exe shell32.dll,ShellExec_RunDLL ".\папка\файл". Обратите внимание на точку перед первым слешем. Обязательно оставьте поле Рабочая папка пустым, и путь будет читаться относительно положения самого ярлыка. Напоминаю, что для перехода в родительскую папку вместо одной точки в начале надо ставить две, “..\..\” - на два уровня вверх и так далее.
Есть вероятность, что могут возникнуть проблемы у пользователей с урезанными правами, не проверял.
SK
Shokirjon Kamilov
385