Консультация № 203346
22.02.2024, 19:38
0.00 руб.
22.02.2024, 20:13
1 8 2
Работает ли метод Shell BrowseForFolder в Windows 10, 11?
Для примера, есть VBS-скрипт выбора папки
Код:
Const BeginFolder="D:"
Dim objFolder, objShell
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(0, "Выбирайте папку для обработки", 1, BeginFolder)
If Not (objFolder Is Nothing) Then
wscript.echo "Folder: " & objFolder.title
wscript.echo "Full Path: " & objFolder.Self.path
Else
Msgbox "Папка не выбрана"
End If
Он работает в Windows 7, у меня нет возможности проверить его в Windows 10 или 11
Прикрепленные файлы:

Обсуждение

давно
Руководитель
1
1524
01.03.2024, 09:39
общий
это ответ
Адресаты:
Добрый день!
Проверил на Windows 10 - работает. Вечером проверю на Windows 11.
Прикрепленные файлы:
Снимок экрана 2024-03-01 093820.png
Снимок экрана 2024-03-01 093858.png
Снимок экрана 2024-03-01 093908.png
5
Об авторе:
Если не знаешь, что делать - делай шаг вперед.

давно
Посетитель
1022
11
01.03.2024, 11:12
общий
Спасибо большое. У меня просто трудности с доступом к другим машинам. Как я понял, поддержку BrowseForFolder осуществляет функция из библиотеки в составе Internet Explorer, a в Windows 11 браузер Internet Explorer является неподдерживаемым и формально был удален из системы. Беспокоюсь о совместимости.
Об авторе:
Я, оглядываясь, вижу только фиги. Я вперёд смотрю - там тоже фиги. Скверно ...
давно
Руководитель
1
1524
01.03.2024, 11:13
общий
Адресаты:
Да, я понял, в чем суть вопроса. Постараюсь не забыть вечером на Win11 протестить.
Об авторе:
Если не знаешь, что делать - делай шаг вперед.

давно
Руководитель
1
1524
01.03.2024, 19:12
общий
это ответ
Адресаты:
На Windows 11 увидел только дисковод, больше ничего...
Прикрепленные файлы:
Снимок экрана 2024-03-01 в 19.09.28.png
Снимок экрана 2024-03-01 в 19.09.54.png
Снимок экрана 2024-03-01 в 19.10.00.png
5
Об авторе:
Если не знаешь, что делать - делай шаг вперед.

давно
Посетитель
1022
11
02.03.2024, 17:42
общий
02.03.2024, 20:31
Адресаты:
Цитата: Алексей Гладенюк   пост #482251
На Windows 11 увидел только дисковод, больше ничего...
Не всё так очевидно. В скрипте предусмотрена некая начальная стартовая папка, чтобы можно было быстрее попасть в нужное место. Например, в некоей папке конкретной задачи пользователя есть куча подпапок, одну из которых надо выбрать. Это удобно. Не надо лазить по всем дискам и папкам. Попадаем в нужную среду. Выше этого уровня выйти нельзя.
В том скрипте, что я выложил как пример, начальной папкой прописана D:\
У Вас на компьютере, похоже, есть диск C: и есть привод DVD (D:) в котором нет диска или на котором нет папок - я смоделировал эту ситуацию и получил такую же картинку. Посчитал, что, как минимум, раздел диска D: есть практически у всех. Увы ...
Если исправить первую строку скрипта
Код:
Const BeginFolder=""
то у меня (Win7) я попадаю в проводник с возможностью попасть на любой диск и соответственно в любую папку.

[offtopic]
Как-то не очень: перед и после кода очень много пустого места - плохо читаемо.
Возможно, не совсем логично сортировать вопросы по дате поступления. ИМХО, логичнее по времени последней активности, чтобы можно было понять, какая тема обсуждается а какая уже не интересна никому.
[/offtopic]
Об авторе:
Я, оглядываясь, вижу только фиги. Я вперёд смотрю - там тоже фиги. Скверно ...
давно
Руководитель
1
1524
03.03.2024, 12:40
общий
03.03.2024, 12:42
Адресаты:
Да, но на другом компе с Windows 10 с же видел всю структуру папок... Ссылка на пост >>
Прикрепленные файлы:
Снимок экрана 2024-03-01 093820.png
Об авторе:
Если не знаешь, что делать - делай шаг вперед.

давно
Посетитель
1022
11
03.03.2024, 15:42
общий
Ecли в скрипте указано d:\ и видите папки на c: значит диск d: в системе не присутствует.
Об авторе:
Я, оглядываясь, вижу только фиги. Я вперёд смотрю - там тоже фиги. Скверно ...
давно
Руководитель
1
1524
03.03.2024, 17:46
общий
03.03.2024, 17:47
Адресаты:
Да, еще момент, который забыл уточнить. Windows 11 в версии для ARM-процессоров.
Об авторе:
Если не знаешь, что делать - делай шаг вперед.

Форма ответа