Автор Тема: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit  (Прочитано 9379 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
AutoIt: 3.3.12.0
Версия: 1.0

Категория: Вспомогательные функции

Описание: WrapperAutoit3 - программа для компиляции скриптов (au3)
WrapperAutoit3 имеет свои директивы (смотри ниже), но также компилирует скрипты без директив.
Естественно, подсветки директив WrapperAutoit3 в редакторе не будет . но  это не влияет на правильность остального кода. компиляция проходит успешно
В архиве все исходники

Директивы
(нажмите для показа/скрытия)
пример использования директив
(нажмите для показа/скрытия)
Порядок следования директив произвольный. Указывать все директивы необязательно.
Программу можно использовать как portable, в этом случае при компиляции будет запрошен путь к компилятору и к упаковщику
пример файла настроек WrapperAutoit3.ini
[path]
compiler=C:\Program Files\AutoIt3\Aut2Exe\Aut2exe.exe
packer=C:\Program Files\AutoIt3\Beta\Aut2Exe\upx.exe
compilerb=C:\Program Files\AutoIt3\Beta\Aut2Exe\Aut2exe.exe
scite=C:\Program Files (x86)\AutoIt3\SciTE\Properties
Файл настроек создается автоматически, после того, как были указаны пути к компилятору и упаковщику.

WrapperAutoit3 можно устанавливать в контекстное меню и в меню редактора SciTE. Для этого нужно запустить WrapperAutoit3, выбрать любой файл с расширением .au3, вкладка "Установка".
После добавления пунктов в контекстное меню проводника или добавления программы в редактор в корне диска С появится папка с WrapperAutoit3

Командная строка:
компиляция по умолчанию
WrapperAutoit3.exe File.au3
запуск окна WrapperAutoit3 для редактирования\установки  директив
WrapperAutoit3.exe /gui File.au3
Файл: Исходник + пример + EXE
Только исходник

P.S.:Возможна реакция антивирусной программы
Источник: autoit-script.ru
Автор(ы): joiner


Внимание: Для просмотра прикреплённых файлов необходимо Войти или Зарегистрироваться
« Последнее редактирование: Июнь 20, 2015, 03:32:48 от joiner »
Были времена, когда солнце было ярче, трава зеленее, а водка сорокоградуснее

Русское сообщество AutoIt

[Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Отправлен: Октябрь 10, 2014, 00:02:39 »

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #1, Отправлен: Октябрь 10, 2014, 06:19:52 »
добавил управление сжатием
##upx
добавил возможность удалять иконку по умолчанию
##dellresico
выше все директивы с примером применения.

переписал часть кода в целях оптимизации

Оффлайн xklx [?]

  • Новичок
  • *
  • Сообщений: 50
  • Репутация: 3
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #2, Отправлен: Октябрь 10, 2014, 11:56:01 »
Если не трудно можно добавить чем он лучше/хуже стандартного и какие преимущества.

Русское сообщество AutoIt

Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #2 Отправлен: Октябрь 10, 2014, 11:56:01 »

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #3, Отправлен: Октябрь 10, 2014, 12:47:12 »
я хочу сделать мобильную версию. сейчас он привязан к папке установки языка, но на самом деле это не нужно для компиляции.
Wrapper, который идет с редактором, не работает, если его запустить с рабочего стола.
MyWrapper  работает из любой папки. Пока нет окна, где можно заполнить некоторые другие детали, как автор, версия и так далее, но его нет, потому что пока нет такой опции в MyWrapper .
но в отличии от встроенного, он может удалять ресурсы из файла (пока сделал удаление стандартной иконки) и менять на пользовательские.
то есть если в скрипте написать
##dellresico=y
##addresbmpico=C:\MyWrapper\A.ico,3,99,3
##addresbmpico=C:\MyWrapper\wc.ico,3,R
компилировать скрипт без иконки, то будет удалена стандартная иконка (которую устанавливает AutoIT 3.3.12.0) в Icon Entry и ее параметры в Icon Group
потом устанавливаем свою иконку
потом добавляем еще одну
и получаем, что файл имеет одну иконку, а в окне программы и в трее отображается другая иконка.
это, конечно, не какие то там огромные преимущества.но все же. можно управлять своей программой.
надеюсь, со временем допишу функции добавки комментарий - автор , версия, язык и прочее.

Autoit3Wrapper такой же дополнительный, но не обязательный инструмент для программирования

Оффлайн inververs [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 2135
  • Репутация: 462
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #4, Отправлен: Октябрь 10, 2014, 13:32:20 »
joiner
А почему диррективы не сделать совместимыми со стандартнымыми? Тогда появится альтернатива чем собирать скрипт, либо стандартным врапером, либо вашим.

Русское сообщество AutoIt

Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #4 Отправлен: Октябрь 10, 2014, 13:32:20 »

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #5, Отправлен: Октябрь 11, 2014, 07:10:35 »
функционал другой. ну и...не люблю стандарты.
в итоге, это всего лишь проект, пример того, что можно собрать свой инструмент, заточить под себя или сделать общим.


--------------------------------------------------------------------------------------------------------------------------------
добавлены директивы MyWrapper .
можно добавлять версию файла, комментарии, менять разрядность выходного файла и так далее.
смотри первое сообщение
исходник с примерами там же.

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #6, Отправлен: Октябрь 13, 2014, 00:05:13 »
Добавил программе окно. можно собирать скрипты из контекстного меню :
компилировать по умолчанию
компилировать с опциями. как в стандартном wrapper - e
немного изменил принцип записи свойств файла.
есть возможность менять язык файла . нужно только указать нужную кодировку языка
в окне программы можно заполнить 17  пунктов свойства файла. эти директивы будут вписаны в исходник при компиляции
часть функций взята из исходника AutoIT3Wrapper. естественно , пришлось их обработать для своего проекта.

все примеры и готовая программа по ссылке в первом сообщении.
« Последнее редактирование: Октябрь 13, 2014, 00:14:19 от joiner »

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #7, Отправлен: Октябрь 15, 2014, 05:19:34 »
добавлено:
сохранение параметров  без последующей компиляции кода

Русское сообщество AutoIt

Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #7 Отправлен: Октябрь 15, 2014, 05:19:34 »

Оффлайн C2H5OH [?]

  • Знаю я тут одно место с офигенными циркулями...
  • AutoIt Гуру
  • *****
  • Сообщений: 1473
  • Репутация: 332
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #8, Отправлен: Октябрь 15, 2014, 13:01:25 »
А почему директивы не сделать совместимыми со стандартными? Тогда появится альтернатива чем собирать скрипт, либо стандартным врапером, либо вашим.
функционал другой. ну и...не люблю стандарты.
в итоге, это всего лишь проект, пример того, что можно собрать свой инструмент, заточить под себя или сделать общим.

joiner,
ну вот... Ну неужели не понятно?? Вы же умный человек! Так зачем же?! ...
На кого рассчитан Ваш MW ?
Ну вот, допустим я на него перешел... Тогда мне нужно отказаться от стандартного и везде установить MW. Тогда мне нужно переписать все свои скрипты под MW. Тогда людям, которым я передаю скрипты, тоже нужно переходить на MW. А что делать со скриптами, которые я не пишу сам, а беру готовые (с  оф.сайта, например) ?
А справка по этим альтернативным директивам где?
А поддержку кто будет обеспечивать? (только не говорите что Вы лично  :rofl:)
Как можно не понимать, что путь к внедрению нового - это обязательная поддержка старого? Зачем противопоставлять своё стандартному???
Рано или поздно все станет понятно, все станет на свои места и выстроится в единую красивую схему, как кружева. Станет понятно, зачем все было нужно, потому что все будет правильно.

Оффлайн DarWiM [?]

  • Продвинутый
  • ***
  • Сообщений: 527
  • Репутация: 90
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.8.1
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #9, Отправлен: Октябрь 15, 2014, 13:16:28 »
C2H5OH

joiner  [?]
Цитировать
это всего лишь проект, пример того, что можно собрать свой инструмент, заточить под себя

Мне кажется, что автор дал понять основную идею..  :)

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #10, Отправлен: Октябрь 15, 2014, 13:53:42 »
C2H5OH
слегка поясню.
как и было написано, это частный инструмент. такие инструменты есть , думаю, у каждого кодера. я пользуюсь им. и мне он вдруг понравился :)
по поводу совместимости. я думаю над этим, но!!!
мне не нравятся длинные имена директив стандартного Au3Wrapper -а
передавать скрипты можно без директив. зачем они?
далее,
директивы никак не вяжутся с остальным кодом. это всего лишь инструкция к компиляции. можно взять любой скрипт и компилировать через MW.в окне добавить свои параметры или компилировать без оных. в этом отношении MW никак не отличается от встроенного.
да и вообще, по сути MW не отличается от встроенного врапера.
я выше писал, что некоторые функции взяты из исходного кода стандартного Autoit3Wrapper
посмотри исходник MW
стандартный Autoit3Wrapper работает только из своей папки установки (по умолчанию), MW работает из любой директории.
« Последнее редактирование: Октябрь 16, 2014, 00:33:52 от joiner »

Оффлайн firex [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 943
  • Репутация: 203
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #11, Отправлен: Октябрь 15, 2014, 15:19:25 »
joiner
Есть еще идея на счет опции "Предварительная инициализация всех констант", суть ее в следующем:
Заменить все текстовые константы скрипта вида "Sample text constant" на $HEXRANDOM и инициализировать как константу в шапке. Это дает невероятно хороший прирост скорости AutoIt'у в обработке исполняемой строки.  Чисел это не касается.

Оффлайн Skif_off [?]

  • Новичок
  • *
  • Сообщений: 173
  • Репутация: 12
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #12, Отправлен: Октябрь 15, 2014, 17:46:21 »
firex
Можно поподробнее? С примером для новичка.

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #13, Отправлен: Октябрь 18, 2014, 10:00:12 »
добавил возможность выбора нескольких файлов для добавления в RC_DATA
иконки и рисунки bmp добавляются так же по одному.
но и для тех и для других сделал автоматическую подстановку параметров,
то есть выбрав рисунок bmp сразу будут добавлены соответствующие параметры - тип, имя
так же и при массовом выборе файлов будут добавлены параметры - тип, имя
потом можно будет редактировать вручную, если что то не устраивает :)
смотри обновленные скрины в первом сообщении.

Оффлайн joiner [?]

  • Расмус-бродяга
  • Локальный модератор
  • *
  • Сообщений: 2934

  • Автор темы
  • Репутация: 493
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #14, Отправлен: Январь 01, 2015, 09:13:50 »
Внес некоторые исправления в код.
Ввиду того, что функции обновления ресурсов не всегда срабатывают с первого раза, добавил попытки добавления. в случае безуспешности скомпилированный файл удаляется
« Последнее редактирование: Январь 09, 2015, 03:41:26 от joiner »

Русское сообщество AutoIt

Re: [Compiled] WrapperAutoit3 - компиляция скриптов Autoit
« Ответ #14 Отправлен: Январь 01, 2015, 09:13:50 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
0 Ответов
4138 Просмотров
Последний ответ Июль 20, 2009, 18:25:09
от Medic84
9 Ответов
20304 Просмотров
Последний ответ Сентябрь 15, 2010, 21:58:29
от Kaster
4 Ответов
6187 Просмотров
Последний ответ Июль 12, 2012, 11:06:51
от firex
0 Ответов
5426 Просмотров
Последний ответ Февраль 04, 2013, 09:53:43
от Belfigor
62 Ответов
23182 Просмотров
Последний ответ Июнь 23, 2014, 21:44:02
от slavik83
16 Ответов
7862 Просмотров
Последний ответ Август 03, 2013, 12:35:29
от Astel064
5 Ответов
7034 Просмотров
Последний ответ Июнь 17, 2016, 09:05:08
от Astel064
6 Ответов
2129 Просмотров
Последний ответ Август 14, 2014, 06:46:55
от forc1k
0 Ответов
2051 Просмотров
Последний ответ Октябрь 01, 2014, 13:54:36
от joiner
7 Ответов
4926 Просмотров
Последний ответ Октябрь 27, 2014, 04:23:30
от TD