Что нового

Проблема с запуском второго файла,посредством первого.

renom

Новичок
Сообщения
127
Репутация
2
Оба редактора .au3 лежат в одной папке.
Первый называется 1.au3 и он имеет следующее содержание:

Код:
Sleep(2 * 1000)
Run("2.au3")


Содержание файла 2.au3:

Код:
Sleep(2 * 1000)
Beep(2 * 1000)
MsgBox(0, "hello","HI!")


Что не так сделал в первом редакторе?



Добавлено:
Сообщение автоматически объединено:

Кстати если второй файл компилировать в .ехе формат,то все работает нормально.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Потому что Run() воспринимает только исполняемые файлы. Используй ShellExecute().
 

XpycT

Скриптер
Сообщения
380
Репутация
132
renom
На скорую руку набросал
Код:
Sleep(2 * 1000)

$sAutoItDir = RegRead('HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir')
Run($sAutoItDir & '\AutoIt3.exe /AutoIt3ExecuteScript "' & @ScriptDir & '\2.au3"', '')
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Автор
R

renom

Новичок
Сообщения
127
Репутация
2
мм,а как действовать если они находятся в разных местах,эти файлы?
первый файл .au3:
Код:
Run("2.exe")


второй файл .ехе:
Код:
MsgBox(0, "test", "done")


По прежнему не получается.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,716
Код:
Run("C:\Program Files\MyProg\2.exe")
 

XpycT

Скриптер
Сообщения
380
Репутация
132
renom [?]
Неа...
А это единственный способ?Потому что у меня даже такой папки нету.

:rofl: :rofl: :rofl:

OffTopic:
Помойму надо заводить тему для перлов нашего форума :whistle:


Код:
Dim $sFilePath = @ScriptDir ; Путь до файла который надо запустить
Dim $sFileName = "2.au3"               ; Название файла который надо запустить

If StringRight($sFileName, 3) = "exe" Then Run($sFilePath & '\' & $sFileName, '')
If StringRight($sFileName, 3) = "au3" Then Run(@AutoItExe & ' /AutoIt3ExecuteScript "' & $sFilePath & '\' & $sFileName & '"', '')
 
Автор
R

renom

Новичок
Сообщения
127
Репутация
2
XpycT сказал(а):
Не знаю про какую папку вы подумали,но я имел ввиду MyProg ;)
Если ее нужно создавать отдельно для такого случая - то это к сожалению не совсем то,что мне нужно.

тему можно закрывать.
 

XpycT

Скриптер
Сообщения
380
Репутация
132
renom [?]
Не знаю про какую папку вы подумали, но я имел ввиду MyProg

Именно про нее я и подумал.

Yashied привел такой путь и такое название папки, только в качестве примера. Вам же надо заменить на тот путь и, по которому у вас находить файл. ;)
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,665
Репутация
2,463
XpycT
Код:
$sAutoItDir = RegRead('HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt', 'InstallDir')
Run($sAutoItDir & '\AutoIt3.exe /AutoIt3ExecuteScript "' & @ScriptDir & '\2.au3"', '')
А зачем там путь к AutoIt, есть же макрос @AutoItExe.
 
Верх