Можно ли программно заполнять формы сторонних приложений?
Меня всегда интересовало решения не стандартных задач, и очень давно в моей голове сидит мысль. А можно ли удалённо, например отправляя запросы с веб сервера, обращаться к форме скомпилированной программы, установленной на винде, предположим это KeyCoollector или любая другая программа. Заполнять форму, получать ответ и отправлять обратно. Понятно дело, что можно у разработчиков попросить доступ к API, однако, очень часто, к хорошим и старым инструментам API получить не возможно.
На ум приходит следующее решение, есть программы выполнения макросов на винде - по заданному сценарию шевелить мышкой и заполнять данные в определённых программах, по определённым координатам и т.д. Можно алгоритмировать и автоматизировать почти любые действия пользователя. Суть идеи : получать из вне команды на заполнение определённых полей в определённых координатах, и с других полей брать ответ и отправлять его обратно. Иными словами имитировать действие "посредника-оператора".
Понимаю, что данное решение жестокое извращение и кощунство, однако это решит задачу. Был бы рад выслушать любые извращения, которые помогут натолкнуть на мысль решения данной задачи
Вот задача
"Компьютер и Веб сервис мой, я хочу что бы результат подсчёта установленного на МОЁМ компьютере ПО получал пользователь на сайте. И собственно говоря пользователь на сайта отдавал данные и команду МОЕМУ ПО о подсчёте. Однако ПО установленное НА МОЁМ компьютере НЕ МНОЙ разработано.
Пример задачи в реальной жизни.
На моём компьютере стоит KeyCollector. На моём сайте есть форма для отправки ключевых слов. Мне нужен способ, доставить ключевые слова в KeyCollector на свой компьютер, посчитать и цену вернуть пользователю на сайт.
Вопрос Как связать html форму на сайте с формой KeyCollectora на моём локальном компьютере и обеспечить взаимодействие.
Просьба к модераторам удалить вопрос.
Автор натурально не знает, чего хочет, все время юлит, необоснованно усложняет задачу.
Эти бобрострадания являются чем угодно, но не вопросом.
Если, как ты говоришь, клиентский комп принадлежит тебе, то тогда непонятно, какую такую "задачу" ты в принципе решаешь. Берешь пишешь прогу, которая слушает порт, "получает извне команды на заполнение определённых полей в определённых координатах, и с других полей брать ответ и отправлять его обратно". Задача тривиальная, но странная. Непонятно, зачем с веб-сервера лазить на домашний комп. У меня такое впечатление, что тебе нужен VPN. Ну или тот же радмин/VNC.
Объясню задачу, предположим, что есть стороннее ПО на винде, которое ведёт некий подсчёт. Я хочу, чтобы пользователь ввёл данные на сайте , в этот момент данные попали в это ПО, произошёл подсчёт и результат вернулся пользователю. Скажем так, я хочу вынести интерфейс разработанного не мной ПО в отдельный веб сервис.
jackroll: Компьютер и Веб сервис мой, я хочу что бы результат подсчёта установленного на МОЁМ компьютере ПО получал пользователь на сайте. И собственно говоря пользователь на сайта отдавал данные и команду МОЕМУ ПО о подсчёте. Однако ПО установленное НА МОЁМ компьютере НЕ МНОЙ разработано. Вот так вроде бы яснее :)
Пусть не просто, и с моим ведомом но как ? Пока DLL Иньекции действительно решение, в голова следующая схема на C++ получать запрос с сайта создавать инжекцию и её результат отправлять обратно на сайт
FanatPHP Вы помоему или не хотите вникнуть и представить задачу в видел алгоритма, либо совершенно неадекватный человек. Я абсолютно знаю чего хочу, куда ещё понятней ?
Вот задача
"Компьютер и Веб сервис мой, я хочу что бы результат подсчёта установленного на МОЁМ компьютере ПО получал пользователь на сайте. И собственно говоря пользователь на сайта отдавал данные и команду МОЕМУ ПО о подсчёте. Однако ПО установленное НА МОЁМ компьютере НЕ МНОЙ разработано.
Пример задачи в реальной жизни.
На моём компьютере стоит KeyCollector. На моём сайте есть форма для отправки ключевых слов. Мне нужен способ, доставить ключевые слова в KeyCollector на свой компьютер, посчитать и цену вернуть пользователю на сайт.
Вопрос Как связать html форму на сайте с формой KeyCollectora на моём локальном компьютере и обеспечить взаимодействие. Что тут неясного ? Ваша жалоба администрации абсолютна неуместна.
FanatPHP: Это выходит за рамки вопроса раз, второе эту программу я предположил просто в качестве примера (хотя лицензия на KeyCollector у меня есть), третье есть множество share ware программ и решений с GNU GPL лицензиями авторы которых не как не против их эксплуатации в любых проявлениях, ну и четвёртое самое главное, если вам нечего сказать по сути вопроса - я вас здесь не держу.
Не прикидывайся, лицензия у тебя для личного использования. Все что ты химичишь - это, действительно, попытка сделать веб-интерфейс к коммерческой программе, и обворовать ее авторов. Для любых других задача такие адовы велосипеды не требуются.
FanatPHP: Поздравляю Шерлок, ты раскрыл преступление. Это действительно можно так использовать, однако этого у меня в мыслях не было. Была мысль достучаться до фришной программы, которая решает некоторую проблему. И для того, что бы не изобретать велосипед и не писать самому эту фришную программу, гораздо проще сесть уже на готовый.
В пример этой статье предоставляется RAdmin, я его использовал и там нет функционала автоматической передачи данных с сервера в поля запущенной программы на Винде. Я даже не представляю как это можно сделать.
Данный протокол передаст данные на компьютер, но как он автоматом найдёт запущенную программу вставить в нужны поля переданные автоматически данные и вернёт ответ, я не понимаю