Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
259 / 200 / 49
Регистрация: 18.12.2015
Сообщений: 416

Выбор папки из ярлыка

26.03.2017, 12:32. Показов 1991. Ответов 1

Студворк — интернет-сервис помощи студентам
Добрый день!

Возникла необходимость выбирать расшаренную папку в сетевом расположении.
Обычно пользователь пользуется быстрым переходом к этим папкам через ярлыки на рабочем столе/в избранном/etc. Класс FolderBrowserDialog эти ярлыки соответственно не видит(выбор компьютера и ее расшаренной папки из ветки "Сеть" не предлагать - компьютеров очень много).
Идеальный вариант - класс OpenFileDialog, но он работает только с файлами, а мне необходимо выбрать папку(задать переменной путь к этой папке).
Может кто подскажет/поделится примером своего класса типа FolderBrowserDialog или какие-либо трюки с имеющимися классами?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.03.2017, 12:32
Ответы с готовыми решениями:

Код для выбор папки из жестких дисков
Подскажите пожалуйста код, который при запуске предлагает выбрать файл и код который позволяет открыть этот выбранный файл. Это 2 разных...

Удаление ярлыка из папки Recent
Здравствуйте программисты . Вот уже 2 день сижу и мучаю себя , не как не могу удалять ярлык из папки Recent . Код : procedure...

Прочесть название файла/папки/ярлыка под курсором
Здравствуйте. Подскажите, пожалуйста, возможно ли узнать имя ярлыка/папки/файла, который находится в данный момент под курсором? И как...

1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18291 / 14214 / 5368
Регистрация: 17.03.2014
Сообщений: 28,891
Записей в блоге: 1
26.03.2017, 18:17
Лучший ответ Сообщение было отмечено Yury Komar как решение

Решение

Jungl, думаю здесь нужно писать свой диалог с полем ввода пути и списком общих папок которые мы получили из ярлыков, избранного, истории файлов Windows и т.п. Перебираем все ярлыки, получаем путь из них и оставляем только указывающие на UNC пути. Код получения пути из ярлыка смотри ниже. В проект нужно добавить ссылку на COM библиотеку Microsoft Shell Controls And Automation.
ShortcutHelper

https://code.msdn.microsoft.co... 1635904509
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
Imports System.IO 
 
Public Module ShortcutHelper 
    Public Function IsShortcut(strPath As String) As Boolean 
        If Not File.Exists(strPath) Then 
            Return False 
        End If 
 
        Dim directory As String = Path.GetDirectoryName(strPath) 
        Dim strFile As String = Path.GetFileName(strPath) 
 
        Dim shell As Shell32.Shell = New Shell32.Shell() 
        Dim folder As Shell32.Folder = shell.NameSpace(directory) 
        Dim folderItem As Shell32.FolderItem = folder.ParseName(strFile) 
 
        If folderItem IsNot Nothing Then 
            Return folderItem.IsLink 
        End If 
 
        Return False 
    End Function 
 
    Public Function ResolveShortcut(strPath As String) As String 
        If IsShortcut(strPath) Then 
            Dim directory As String = Path.GetDirectoryName(strPath) 
            Dim strFile As String = Path.GetFileName(strPath) 
 
            Dim shell As Shell32.Shell = New Shell32.Shell() 
            Dim folder As Shell32.Folder = shell.NameSpace(directory) 
            Dim folderItem As Shell32.FolderItem = folder.ParseName(strFile) 
 
            Dim link As Shell32.ShellLinkObject = folderItem.GetLink 
 
            Return link.Path 
        End If 
 
        Return String.Empty 
    End Function 
End Module
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.03.2017, 18:17
Помогаю со студенческими работами здесь

Открытие файла/ярлыка/екзешника/папки через консоль С++
Всем здарова :) Очень много искал но так и не нашёл. Суть программы в том чтобы например при нажатии на кнопку 3 через консоль открывалась...

Выбор нужной папки по маске и подстановка названия выбранной папки в путь в bat файле
Здравствуйте! Есть папка dist содержащая папки с дистрибутивами 1С вида: dist\8.3.5.1186 dist\8.3.6.1977 и тд. В bat файле,скажем,...

При создании ярлыка ошибка "Создание ярлыка не возможно, Возможно нет места на диске"
При создании ярлыка на рабочем столе любого приложения, появляется окно с надписью "Создание ярлыка не возможно, Возможно нет места на...

Выбор папки
Есть ли компонент под такое, как на скрине? Или это просто форма/диалог + DirectoryListBox1 ? Знаю, можно сделать FileOpenDialog с опцией...

Удобный выбор папки
Надо на форме получать путь к папке в текстовом виде. Не могу найти ничего подходящего и готового. Т.е. надо нечто подобное...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru