Как отрыть папку Windows из браузера

windows web   70  

Этот метод хоть и небезопасен, но работает и подойдет для внутрисетевых корпоративных порталов / CRM.

В HTML-коде это будет выглядеть как-то так:

<a href="myproto://C:/My Folder/123">открыть папку</a>

Также из JavaScript:

window.open('myproto://C:/My Folder/123');

Чтобы все это начало работать, необходимо сделать протокол, который будет обрабатывать url.

Для этого в любом месте (хоть на рабочем столе) создаём файл с расширением .reg (например, myproto.reg) и следующим содержимым:

Windows Registry Editor Version 5.00 

[HKEY_CLASSES_ROOT\myproto]
"URL Protocol"="
"
@="URL:Myproto Protocol"

[HKEY_CLASSES_ROOT\myproto\shell]

[HKEY_CLASSES_ROOT\myproto\shell\open]

[HKEY_CLASSES_ROOT\myproto\shell\open\command]

@="\"C:\\myproto.bat\" \"%1\""

Здесь myproto — название созданного протокола. Можете изменить на своё (но не используйте стандартные названия протоколов типа http, ftp, mailto и прочие).

Запускаем файл. Винда выдаст несколько вопросов и предупреждений, со всеми соглашаемся. Всё, больше этот файл на этом компьютере не нужен, можно удалять.

Далее в корне диска C: необходимо создать файл myproto.bat со следующим содержимым:

@echo off 
set "path=%~1"
setlocal enabledelayedexpansion
set path=%path:myproto://=%
set path=%path:"=%
set path=%path:/=\%
set path=!path:%%20= !
set path=!path:%%5C=\!
C:\Windows\explorer.exe "
%path%"

Всё готово. Теперь вы можете прямо из браузера (абсолютно любого) на данном компьютере открывать папки в проводнике в отдельном окне, просто открыв ссылку вида myproto://C:/My Folder/123.

К сожалению, данные действия придётся проделать на всех компьютерах, где необходима такая функциональность. 

Источник: https://habr.com/ru/sandbox/114238/

Поиск


Метки