| 01 | 
                     Существует класс Enviroment, позволяющий работать с «папками специального назначения» (Special Folders) — он помогает корректно взаимодействовать с ними при создании ярлыков.  | 
    
         
                О перечислении Special Folders можно почитать в MSDN — Environment.SpecialFolder Enumeration
             
         | 
            
| 02 | 
                     Для создания ярлыков существует класс WshShell. Для его использования необходимо в References проекта добавить COM-библиотеку — Windows Script Host Object Model (правой кнопкой по названию проекта — Properties — вкладка Referenses — кнопка Add... — вкладка COM — библиотека Windows Script Host Object Model — ОК), и добавить в коде ссылку на эту библиотеку:  | 
    
         | 
            
| 03 | VB.NET | 
                     1 Imports IWshRuntimeLibrary  | 
    
         | 
            
| 04 | 
                     Далее все очень просто, пример добавления ярлыка в папку автозагрузки:  | 
    
         | 
            
| 05 | VB.NET | 
                     1 2 3 4 5 6 slPath = IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Startup), Application.ExecutablePath)
Dim shell As New WshShell
Dim link As IWshShortcut = shell.CreateShortcut(slPath)
link.TargetPath = Application.ExecutablePath
link.WorkingDirectory = Application.StartupPath
link.Save()  | 
    
         | 
            
| 06 | 
                     Класс-обертка для более удобного взаимодействия с ярлыками:  | 
    
         | 
            
| 07 | VB.NET | 
                     1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 Public Class Shortcut ...  | 
    
         | 
            
| 08 | 
                     Использование:  | 
    
         | 
            
| 09 | VB.NET | 
                     1 2 3 4 5 6 7 8 9 10 11 ' Функция, осуществляющая создание/удаление ярлыка исполняемого приложения в папку Автозапуск, меню Пуск
 Public Shared Function SetAutorunAsShortcut(Autorun As Boolean, Optional IsCurrentUser As Boolean = True) ...  | 
    
         | 
            
| 10 | 
                     Также стоит обратить внимание на прочие свойства объекта IWshShortcut:  | 
    
         | 
            
| 11 | 
                    
  | 
    
         
                Подробнее о свойствах на MSDN — Properties (Windows Script Host)
             
         | 
            
| 12 | 
                     С учетом этих и других свойств можно модифицировать под собственные нужды, представленный выше класс Shortcut.  | 
    
         | 
            
| 14 | 
                     Похожие запросы: 
  | 
    
         |