Страница 2 из 2
Добавлено: Чт авг 12, 2010 19:51
HA3APET
Flasher
Как я понял и без <PATH>\Autoit\Include\Memory.au3 всё работает.
Flasher
Flasher писал(а):Любая конвертация в exe-шник(хоть из vbs, хоть из cmd/bat, и из au3 в данном случае) получает размер конечного файла в десятки и сотни раз больший в сравнении с исходным.
Ну не с 2Kb до 625Kb (это без иконки!), у меня например bat на 3Kb переводим в exe получаем 9Kb.
Вот и интересует вопрос о возможном уменьшении размера exe, бывшего au3. Видимо в этом exe ещё и средства выполнения самого скрипта.
Добавлено: Чт авг 12, 2010 19:56
MVV
По-секрету скажу, этот exe наверняка состоит из исполнимого модуля AutoIt, который является общим для всех подобных файлов (и который содержит всё необходимое для выполнения любой функции скрипта), к которому приписан некий псевдокод, который этот модуль и выполняет.
И единственный способ уменьшить его размер - это перекомпилировать образ исполнимого модуля, оставив в нем только часть функций - но это нам не под силу.
Добавлено: Чт авг 12, 2010 21:11
Loopback
HA3APET писал(а):Как я понял и без <PATH>\Autoit\Include\Memory.au3 всё работает.
Раз работает - значит скрипт всё нашел успешно и можно не заморачиваться
MVV писал(а):По-секрету скажу, этот exe наверняка состоит из исполнимого модуля AutoIt, который является общим для всех подобных файлов (и который содержит всё необходимое для выполнения любой функции скрипта), к которому приписан некий псевдокод, который этот модуль и выполняет.
Совершенно верно, скрипт и все подключаемые к нему дополнительные ресурсы сжимаются и присоединяются к интерпретатору.
Поэтому я обычно не компилирую свои скрипты, а запускаю их через интерпретатор - в этом случае экзешник только один для всех. Понятное дело, это имеет смысл, если их много.
Впрочем, в данном случае размером мы расплачиваемся за простоту и скорость написания скриптов. Для возможностей Autoit 600 кб - совсем не так много.
MVV писал(а):И единственный способ уменьшить его размер - это перекомпилировать образ исполнимого модуля, оставив в нем только часть функций - но это нам не под силу.
Ага. Но даже если бы исходники были сейчас открыты, этот функционал проще написать заново на том же С++, чем выковыривать "лишние" функции

Еще вариант - реальная компиляция в машинный код, но такой компилятор вряд ли когда-нибудь появится.
Добавлено: Чт авг 12, 2010 22:31
Flasher
HA3APET писал(а):Как я понял и без <PATH>\Autoit\Include\Memory.au3 всё работает.
Правильно, значит библиотека была в составе дистрибутива. Скомпилированному exe-шнику не требуются ни интерпритатор(Autoit.exe), ни библиотеки. А вот поводом сэкономить, как не раз замечал
Loopback, может быть использование нескольких скриптов с одним exe-шником самой программы в дистрибутиве и, если это востребовано, несколько частоиспользуемых библиотек. Для фаната AutoIt этого конечно недостаточно, а для Тоталавца, ИМХО, вполне.
Loopback писал(а):Для возможностей Autoit 600 кб - совсем не так много.
Немного не уловил суть фразы. Возможности эти никогда и никем не будут использованы в полной мере, поэтому владеющий арифметикой сам способен решить, компилить или оставлять скрипты нетронутыми.

Добавлено: Чт авг 12, 2010 22:59
Loopback
Flasher писал(а):Немного не уловил суть фразы. Возможности эти никогда и никем не будут использованы в полной мере, поэтому владеющий арифметикой сам способен решить, компилить или оставлять скрипты нетронутыми.
Имелось в виду, что все возможности интерпретатора (а на Autoit сейчас потенциально можно написать всё - кроме dll и драйверов

) умещаются в 600 кб.
Впрочем, что-то тема уже в оффтоп скатывается

Добавлено: Чт авг 12, 2010 23:19
Avada
Loopback писал(а):Впрочем, что-то тема уже в оффтоп скатывается
Да уж, есть такое дело. ИМХО, всё необходимое в рамках темы по спорному вопросу с AutoIt уже сказано.
Добавлено: Вс фев 17, 2013 05:45
LonerD
Loopback
Никак не удаётся подружить скрипт с английской Windows 8 x64.
Добавил проверку для восьмёрки, заменил русские термины на английские, но всё-равно процесс доходит только до открытия свойств файла. Возможно, в Win8 или 64-битной системе отличается процесс получения заголовка таба.
Что нужно подправить?
(а заодно просьба реализовать в скрипте проверку одновременно для русскоязічніх и англоязічніх заголовков).
Таким же образом через Autoit возможно реализовать в Windows 6.x открытие диалогового окна-аналога ХР-шной команды cm_EditAuditInfo ?
Добавлено: Вс фев 17, 2013 13:20
Flasher
У меня скрипт на 7-ке вообще вызывает диалог "Выбор программы"..