Пишу инсталлятор, который, как принято, должен создавать ярлык на рабочем столе и группу в меню Пуск. Находил в сети много вариантов одной и той же функции создания ярлыков, которая основывается на Shellapi. MinGW при компиляции кода с этой функцией пишет "undefined reference to CoCreateInstance@20'" и "undefined reference toIID_IPersistFile'", при этом в коде ничего не подчёркивая красным. Простой SHCreateShortcut() он тоже не понимает. Очень критична статическая компиляция!
Собственно вопрос: неужели кроме как через Шелл никак не создать ярлык? Нельзя ли просто WriteFile(..."Link.lnk"...), предварительно записав в переменную-буфер создаваемого файла нужные пути и наименования после определённой последовательности байт, которая отвечает за идентификацию параметров ярлыка? Если так можно, подскажите пожалуйста эти последовательности (маркеры). Или может есть другие пути создания ярлыков?
Видите ли, без Shell..., наверное, можно - как-то же MS это делают :)? только это будет сложно и непереносимо - теоретически формат может и поменяться.
У вас же, похоже, проблема просто в том, что к проекту не подключена нужная библиотека (насколько я помню, Shell32.lib).
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости