Открытие приложения Windows через php `exec`

#php #windows #exec

#php #Windows #exec

Вопрос:

У вас есть php веб-приложение, установленное на настольном компьютере с Windows и используемое локально.

Как вы могли бы открыть приложение (скажем notepad.exe ), когда пользователь обращается к определенной веб-странице?

Конечно, exec работает для приложений командной строки, но не для графических, поскольку команды выполняются от имени пользователя php / apache.

Итак, вопрос можно было бы перефразировать как как можно использовать exec от имени другого пользователя?

Комментарии:

1. В Windows есть runas команда для этого.

Ответ №1:

На самом деле, это было намного проще, чем я думал.

Вам просто нужно поставить галочку «Разрешить этой службе взаимодействовать с desktop» для службы Apache на панели конфигурации служб, и приложения, открытые через php, будут открыты для пользователя.

Ответ №2:

Я предполагаю, что вы хотите открыть notepad.exe с вашего веб-сервера для текущего пользователя.

Я сомневаюсь, что это когда-либо сработает, поскольку PHP запускается от имени другого пользователя. Это также означает, что веб-сервер должен быть установлен на компьютере, который использует пользователь, и запускаться с него.

Что вы можете сделать, так это открыть в браузере блокнот. Свяжите расширение файла с notepad в вашем браузере («Всегда открывайте файл этого типа с помощью …» или что-то в этом роде).