Программное создание ярлыка (shortcut) для сетевого подключения.

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

Ниже приведён код создающий ярлык для VPN соединения с именем "demo" и сохраняющий его рабочем столе. При создании ярлыка не важен тип и настройки соединения, поэтому данный код можно использовать для создания ярлыка на любое подключение из каталога "Сетевые подключения", в частности модемное, по локальной сети и т.д.
Заранее приношу свои извинения за почти полное отсутствие коментариев: код был написан достаточно давно и даже на тот момент это было полуинтуитивно - я слабо разбираюсь в COM-программировании. Часть кода скопирована непосредственно с MSDN - об этом указано в коментариях. Частично разобраться в коде должна помочь статья с RSDN рассказывающая о создании обычных ярлыков.

Данный код написан и собирается в MS Visual Studio. Вероятно, что его можно будеть собрать и в других IDE если постараться, но навскидку сделать это в mingw - к сожалению не получилось.


Вернуться в раздел "Разное"