FreeLSD Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 Будучи тупым одинэсником, как-то всю жизнь работал с интерпретаторами и скриптами. А тут появилась одна потребность, но для этого нужно создавать "настоящий" экзешник, который не требует установки кучи софта для работы. При этом экзешник будет состоять из "постоянной" части и "переменной", содержимое которой будет зависеть от предварительно заданных условий. Создавать он должен автоматически: зашел в систему, выбрал опции, получил в ответ готовую утилиту. Ручное вмешательство ("make" и т.п. :) ) исключено. Работа по схеме "экзешник + файл со сценарием" нежелательна. Алгоритм создания "переменной" части - моя забота. Т.е. что бы я хотел: в некий шаблон дописывается переменная часть и все это оформляется в конечный исполняемый файл, не требующий дополнительных библиотек и приложений для работы. Схема работы может быть такая: пользователь зашел на сайт, понаставил там флажков в настройках, получил готовый файл, запустил и радуется.Это вообще реально в какой-то степени или чистая фантазия? Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
Пэтро Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 Надо больше исходных данных. Что делает программа? Обращается к файлам? Рисует? ) Работает с устройствами? Теоретически простые функции можно сделать на JScript VBScript Цитата Подключаем Оптический гигабитный интернет в Симферополе и районе.+79787647406http://lugovoe.su Ссылка на комментарий Поделиться на другие сайты Поделиться
Neinsager Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 Схема работы может быть такая: пользователь зашел на сайт, понаставил там флажков в настройках, получил готовый файл, запустил и радуется.Ну если для каждого «флажка» написан соответствующий блок кода, что мешает на стороне сервера собрать из основного массива кода и выбранных блоков готовый бинарник и отослать пользователю? Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 4 августа, 2016 Автор Жалоба Поделиться Опубликовано 4 августа, 2016 Мешает огромное количество вариантов :)Прормамма представляет собой сценарное тестирование. Настройки - произвольное количество строк, каждая строка соответствует экземпляру тестируемой программы, настройки - имя пользователя, пароль, место запуска, характер производимых действий, интервал, количество повторений и т.д. и т.п. Этапы работы программы:1. Создание структуры для сбора данных (статический);2. Запуск выбранного количества экземпляров тестируемого приложения;3. Запуск в каждом экземпляре индивидуального сценария, сформированного из настроек (динамический);4. После завершения работы всех сценариев загрузка собранных данных для анализа (статический). Сценарий из настроек сформировать не проблема, проблема в том, что в нем будут совсем произвольные части и объем его составит десятки строк. Перебор готовых вариантов тут никак не поможет. Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pepper Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 первоначальный вопрос - реально или нет. Ответ: реально, используя любой удобный серверный язык для генерации скрипта, последующей компиляции, и возврата файла пользователюв последнем посте видно нежелание автора этот код написать, т.к. решение должно само создавать всё что хочется автору )) Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 4 августа, 2016 Автор Жалоба Поделиться Опубликовано 4 августа, 2016 Ответ неверный. Решение у меня уже есть, но оно работает в виде обработки 1с. Меня этот вариант вполне устраивает, на мой взгляд, вышло универсальней и, что характерно, дешевле того, что сами 1с предлагают. Следующий этап - довести решение до продакшн варианрта. Изначально я хотел автоматически создавать именно готовую обработку 1с, как стандартное все таки решение, но быстро выяснилось, что 1с этого не умеет, а использование недокументированных возможностей - просто способ получить нерабочее решение после очередного релиза платформы. Поэтому стал думать в сторону экзешника, а не epfника. И вот тут главное препятствие, что я не имею представления о современном состоянии зоопарка серверных языков для автоматической компиляции полученного скрипта. А то бы и спрашивать было не о чем. Формулирую вопрос по-другому:назовите, чем бы вы воспользовались для автоматического получения экзешника из сгенерированного (неважно чем и каким способом) кода. Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
Pepper Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 Формулирую вопрос по-другому:назовите, чем бы вы воспользовались для автоматического получения экзешника из сгенерированного (неважно чем и каким способом) кода.компилятором того языка, код которого был сгенерирован. Не важно чем код сгенерирован, важно что получилось на выходе генераторагрубо говоря берете команду, которая при выполнении из командной строки создает исполняемый файл из Вашего скрипта - и записываете ее в скрипт операционки где крутится веб-сервер - *.bat или *.ps1 для виндовс, что-то другое на выбор для линукс.Этот скрипт операционки дергается веб-сервером, полученный исполняемый файл выдается в http-ответеP.S. нужно таки начинать с типа скрипта, кто его исполняет Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Пэтро Опубликовано 4 августа, 2016 Жалоба Поделиться Опубликовано 4 августа, 2016 1. Создание структуры для сбора данных (статический);2. Запуск выбранного количества экземпляров тестируемого приложения;3. Запуск в каждом экземпляре индивидуального сценария, сформированного из настроек (динамический);4. После завершения работы всех сценариев загрузка собранных данных для анализа (статический).есть пример? или скриншот? Цитата Подключаем Оптический гигабитный интернет в Симферополе и районе.+79787647406http://lugovoe.su Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 5 августа, 2016 Автор Жалоба Поделиться Опубликовано 5 августа, 2016 Есть рабочая обработка для 1с. Соответственно, код на метаязыке 1С :) Не уверен, что он что-то прояснит сверх того, что уже. Если интересно, выложу.Что касается языка, код которого был сгенерирован., то тут, как говорил выше, две части: 1 часть написана неважно на чем, вот с этим я и хочу определиться. Это просто "обертка", там код будет не сильно сложней "hello world", его задача - создать несколько dbf файлов для сбора данных и запустить другое приложение с параметром командной строки. Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 5 августа, 2016 Автор Жалоба Поделиться Опубликовано 5 августа, 2016 Подумал тут и переформулировал задачу. Надеюсь, упростил :)Итак, полный алгоритм: Программа создает в каталоге временных файлов несколько папок, в каждую папку пишет два файла, один из них одинаковый в любом случае, содержимое второго (как и общее количество) зависит от настроек, заданных пользователем.Программа запускает несколько экземпляров другой программы, передавая им в параметре командной строки созданные ранее каталоги с настройками (то есть это выполнение команды Windows, по сути).После этого продолжает просматривать созданные каталоги, как только в них появится некий флаг завершения работы - информация из всех временных каталогов собирается в один файл, сами каталоги уничтожаются. Я так понимаю, на это вообще любой язык способен. Остаются только требования:- исполняемый файл должен создаваться на стороне веб-сервера;- работать должен под виндой;- не должен в готовом виде требовать для работы установки дополнительных компонентов и приложений, разве что что-нибудь совсем стандартное;- не должен должен даже теоретически вызывать юридических проблем, связанных с использованием соответствующего компилятора и т.п. (т.е. чем свободней, тем лучше). Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
Пэтро Опубликовано 5 августа, 2016 Жалоба Поделиться Опубликовано 5 августа, 2016 Все это можно сделать на HTML Applications или Windows Script Host. Такие же интерпретируемые языки. В Windows работающие нативно. Файлы будут в виде исходного кода соответственно. Не пользовались Driver pack solution ? Он как раз отличный пример. Цитата Подключаем Оптический гигабитный интернет в Симферополе и районе.+79787647406http://lugovoe.su Ссылка на комментарий Поделиться на другие сайты Поделиться
AnatoliZ Опубликовано 5 августа, 2016 Жалоба Поделиться Опубликовано 5 августа, 2016 Из того что я понял, думаю что вы можете генерировать powershell код на сервере .... затем конвертировать его в ехе и отдавать клиенту.Недостаток: требуются права клиента на выполнение PShell (set-executionpolicy unrestricted), можно удалённо разрешить.Собственно запуск exe тоже требует прав.P.s. И кроме того выучите совсем не бесполезный PowerShell.P.p.s. Собственно это тот же вариант Windows Script Host предложенный Пэтро. "Файлы будут в виде исходного кода соответственно" не обязаткльно, у WSH можно зашифровать файлы. Они будут исполнятся как скрипт, но тело скрипта будет зашифрованно (нечитабельно). С правами таже песня, нужны :) Цитата Confederation Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 5 августа, 2016 Автор Жалоба Поделиться Опубликовано 5 августа, 2016 Ну права - это понятно. Буду пробовать в этом направлении, спасибо. Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
BenTen Опубликовано 27 октября, 2016 Жалоба Поделиться Опубликовано 27 октября, 2016 Ну права - это понятно. Буду пробовать в этом направлении, спасибо.Интересно, получилось что-то?Как по мне, то такие вещи легко пишутся на любом языке программирования, который ты хорошо знаешь.Я бы, например, спокойно реализовал этот алгоритм на делфи. Кто-то на джаве, сях, шарпе и проч. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Инквизитор Опубликовано 27 октября, 2016 Жалоба Поделиться Опубликовано 27 октября, 2016 Формулирую вопрос по-другому:назовите, чем бы вы воспользовались для автоматического получения экзешника из сгенерированного (неважно чем и каким способом) кода.HTML+javascript + обертыватель типа html2exe. или собрать из готовых кусков виндовый же скрипт типа bat/cmd и засунуть в bat2exe Цитата - Что они хотят? - Ку они хотят… Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 27 октября, 2016 Автор Жалоба Поделиться Опубликовано 27 октября, 2016 Тема отложена на неопределенный срок А для внутреннего пользования всё отлично пашет в виде нативной внешней обработки 1С. Была задумка сделать максимально дружелюбную в использовании обработку сценарного нагрузочного тестирования 1Сных баз данных. Поскольку пока вопрос снят, лично мне хватает с лихвой текущего "дружелюбия". Получилось удобней и быстрей в применении, чем предлагаемая 1С за 100500 рублей конфигурация, к тому же не требует вмешательства в текущую конфигурацию, т.е. можно применять на рабочих БД, не опасаясь последствий. А вопрос из темы относился к попытке добиться того, чтобы пользователю вообще никуда "ручками" лезть не надо было - покрутил настройки, нажал кнопку и алга. Вполне реально, но достаточно трудоемко (не только в отношении заданного вопроса), так что "для себя" не вижу смысла тратить время. Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
BenTen Опубликовано 27 октября, 2016 Жалоба Поделиться Опубликовано 27 октября, 2016 пашет в виде нативной внешней обработки 1С.Проясните, пожалуйста, что значит "нативный" в контексте 1С?Обработка может работать в Винде без платформы 1С? так что "для себя" не вижу смысла тратить время.Вот так всегда, на себя нам времени жалко Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
FreeLSD Опубликовано 27 октября, 2016 Автор Жалоба Поделиться Опубликовано 27 октября, 2016 "Нативный" для платформы, т.е. достаточно одной таблетки внутренних средств 1С для работы - открыл, запустил, зажужжало )Цель и была сделать ее работоспособной без 1с, но на себя нам времени жалко , а больше никому вроде не нужно Просто "для саморазвития" нет времени сейчас ковыряться. Да и потом, если у человека вызывает затруднение действие вида "Файл/Открыть" или нет рабочего аккаунта в системе, то, может, и не нужно ему такие инструменты давать? Цитата Или что-то случилось, или одно из двух. Ссылка на комментарий Поделиться на другие сайты Поделиться
CIBAS Опубликовано 15 декабря, 2020 Жалоба Поделиться Опубликовано 15 декабря, 2020 Дабы не открывать новую тему задам вопросик тут.С предыдущими постами вопрос не связан, просто название темы располагает ... Собственно вопрос:На чём сейчас "модно" писать программки под Вин для десктопа?Задачи чисто технические - обмен по COM портам, обмен по TCP/UDP,простенький интерфейс (кнопочки, поля ввода/редактирования) без наворотов. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Iverton Опубликовано 22 декабря, 2020 Жалоба Поделиться Опубликовано 22 декабря, 2020 так на чем хотите на том и пишите ) ну из того на чем под десктоп пишут, используйте правильные библиотеки под свои запросы ) например c++, с#, java Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.