Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   Не запускается скрипт AutoIt на машине с Windows 98 на борту (http://forum.oszone.net/showthread.php?t=200989)

Danvervlad 03-03-2011 10:50 1626107

Не запускается скрипт AutoIt на машине с Windows 98 на борту
 
Вложений: 1
Возможно есть какие-то способы заставить работать скрипт на машине с ОС Windows 98?

Iska 03-03-2011 13:11 1626237

Цитирую:
Цитата:

Цитата Script Breaking Changes in Recent Versions
24th December, 2008 - v3.3.0.0

AutoIt:
* Windows 9x and Windows NT 4.0 Operating System support has been removed. Use v3.2.12.1 of AutoIt if you really need this.


Danvervlad 24-03-2011 13:26 1642786

Пробовал я компилировать скрипт в AutoIt версии 3.2.12.1 - на 98 всеравно не запускается... Даже в самом 98 пробовал - никак. В чем может быть дело? Может кто имеет опыт в запуске скриптов под Windows 98?

Iska 24-03-2011 13:45 1642802

Danvervlad, причины могут быть разные. Думаю, стоит привести текст скрипта.

Danvervlad 24-03-2011 17:38 1642989

да элементарное окошко в Windows XP запускается нормально, а в Windows 98 не хочет запускаться! Никаких ошибок, просто не запускается!
Код:

MsgBox(0,"Hello!","It's me!")
Если этот же код компилировать последней версией Autoit, то выскакивает ошибка как на скрине в первом посте. А компилирую версией 3.2.12.1 и вообще ничего!

Проблема в том что у меня в обслуживании есть довольно много машин с Windows 98 на борту, и менять их пока никто не собирается, тем более что со своей задачей они справляются.

Iska 24-03-2011 21:41 1643189

Danvervlad, я сожалею, но у меня сие работает:

Я развернул Windows 98 SE на виртуальной машине с наличествующего у меня оригинального диска с настройками по умолчанию. Затем установил AutoIt 3.2.12.1. Взял код из предыдущего поста. Выполнил его из-под редактора SciTE. Затем скомпилировал его в исполняемый файл и так же выполнил.

То есть, у меня никаких проблем не возникло как с исполнением, равно как и с компиляцией. Увы, боюсь, я не смогу воспроизвести Вашу ситуацию. Не скомпилированные скрипты из-под редактора SciTE у Вас также не запускаются?

Danvervlad 25-03-2011 16:15 1643720

Вложений: 1
вот только что попробовал выполнить тоже самое:

Опа! только заметил что файл AutoIt3A.exe открывает окно, и выбрав *.au3 файл он ЗАПУСКАЕТСЯ! Но вот файл AutoIt3.exe - нет! Какая между ними(файлами: AutoIt3.exe и AutoIt3A.exe) разница?

еле запустил! переименовал Aut2exeА.exe в Aut2exe.exe... все вроде как работает, но с FTP не качает:( сначала поругался на отсутствующий файл FTPEx.au3, потом, когда я его добавил, поругался на отсутствие API функции из FTPEx.au3... я взял да и заменил все .au3 файлы из папки Include на файлы из рабочей 3.5.х версии... скрипт успешно компилировался... но запускаться не хочет ни в XP ни в 98. Начальный кусок выполняется - создается INI файл, а дальше молчит...

Iska 25-03-2011 23:07 1644017

Дабы не мучаться вручную — возьмите не zip, а install-версию.
Цитата:

AutoIt3.exe — версия для x86 NT-систем.
AutoIt3_x64.exe — версия для x64-систем.
AutoIt3A.exe — версия для Win9x-систем.
При установке инсталлятор сам развернёт правильный файл, который и будет называться на целевой системе как «AutoIt3.exe» (аналогично будет с «Au3Info.exe/Au3Info_x64.exe/Au3InfoA.exe», и с «Aut2exe.exe/Aut2exe_x64.exe/Aut2exeA.exe»).

Цитата:

Цитата Danvervlad
сначала поругался на отсутствующий файл FTPEx.au3, потом, когда я его добавил, поругался на отсутствие API функции из FTPEx.au3... я взял да и заменил все .au3 файлы из папки Include на файлы из рабочей 3.5.х версии... скрипт успешно компилировался... но запускаться не хочет ни в XP ни в 98.

Действительно, с чего бы это, а :lol:?! «FTPEx.au3» написан с прототипами Wide-функций библиотеки «Wininet.dll», например:
Код:

Func _FTP_Command($l_FTPSession, $s_FTPCommand, $l_Flags = $FTP_TRANSFER_TYPE_ASCII, $l_ExpectResponse = 0, $l_Context = 0)
        If $__ghWinInet_FTP = -1 Then Return SetError(-2, 0, 0)
        Local $ai_FTPCommand = DllCall($__ghWinInet_FTP, 'bool', 'FtpCommandW', 'handle', $l_FTPSession, 'bool', $l_ExpectResponse, 'dword', $l_Flags, 'wstr', $s_FTPCommand, 'dword_ptr', $l_Context, 'ptr*', 0)
        If @error Or $ai_FTPCommand[0] = 0 Then Return SetError(-1, _WinAPI_GetLastError(), 0)

        Return SetError(0, $ai_FTPCommand[6], $ai_FTPCommand[0])

EndFunc  ;==>_FTP_Command

в то время как компилируете Вы с помощью ANSI версии AutoIt. Было бы очень странно, если бы сие заработало. Впрочем, я могу и ошибаться. Попробуйте сходить в Русское сообщество AutoIt с данным вопросом.

Danvervlad 28-03-2011 13:19 1645571

с AutoIt понятно...

а просто FTP.au3 в среде Windows 98 будет работать?

Iska 28-03-2011 14:27 1645620

Я не нашёл в комплекте AutoIt 3.2.12.1 такого файла. Какой «FTP.au3» подразумевается?

Danvervlad 13-04-2011 13:31 1657287

в комплекте его нет... я его видел в сети

Iska 13-04-2011 14:02 1657303

Расплывчатый ответ, не позволяющий дать никакого определённого ответа на Ваш вопрос:
Цитата:

Цитата Danvervlad
а просто FTP.au3 в среде Windows 98 будет работать? »

Но, коль он у Вас есть — попробуйте; что может быть проще?!

Danvervlad 15-04-2011 16:20 1659093

т. е. больше нет никаких способов скачать файл с FTP используя UDF Autoit'а той версии, которая поддерживает Windows 98?

Iska 15-04-2011 17:49 1659152

Есть. Например, попробовать переписать «FTPEx.au3», используя прототипы «*A» соответствующих функций WinAPI (вместо «*W»), и поправив остальной код включаемого компонента.

Цитата:

Цитата Danvervlad
используя UDF Autoit'а той версии, которая поддерживает Windows 98? »

Мы вроде как выяснили ранее, что такого UDF в комплекте поставки не существовало. Вы сказали, что видели такой в сети. Я предложил Вам его попробовать. Вы пробовали?


Время: 05:39.

Время: 05:39.
© OSzone.net 2001-