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

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Проблема с dll (http://forum.oszone.net/showthread.php?t=147727)

teverus 11-08-2009 21:18 1191347

Проблема с dll
 
Ситуация очень интересная. Есть инсталяха Windows Vista Sidebar. Для успешной инсталяции сначала нужно установить Alky for Application. Я написал скрипты, которые автоматически ставят и Alky и Sidebar по отдельности, но когда я пытаюсь их соединить в одном скрипте (т.е. чтобы сначала автоматически ставились Alky, а потом Sidebar) последний выдает ошибку, не нет vadvapi32.dll, поэтому ставиться, мол, не могу. Хотя, этот dll спокойненько лежит себе в папке Alky.
Это у меня руки кривые или тут какое-то ограничение?
Помогите, пожалуйста, а то я с ума сойдууууу!

Nik_rus 11-08-2009 21:41 1191365

Мы не экстрасенсы
Приведи скрипт.

teverus 11-08-2009 21:48 1191368

;Сначала ставим Extras
Run("1Extras.exe")
WinWaitActive("Windows Sidebar")
Send("{ENTER}")
WinWaitActive ("Microsoft Visual C++ 2005 Redistributable")
WinWaitClose ("Microsoft Visual C++ 2005 Redistributable")

;Теперь ставим Alky for Application
ShellExecute("2Alky for Application.msi")
WinWaitActive("Alky for Applications (Windows XP) Setup")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "SHORT GRAPHICAL VERSION")
Send("{SPACE}")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Destination Folder")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Product Key")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Ready to install")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Complete!")
Send("{ENTER}")

;Сейчас поставим Sidebar
Run("3WindowsVistaSidebar.exe")
WinWaitActive("Windows Sidebar 6.0 Setup")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Press Page Down to see the rest")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Check the components you want to install")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Select some final options")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Completing installation...")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Click Finish to close this wizard.")
Send("{SPACE}")
Send("{ENTER}")

Nik_rus 11-08-2009 21:55 1191374

1.Весь код в тег code !
2.Думаю тут все из-за того, что ты не "ждешь" убирания окна :)
т.е. код примерно такой:
Код:

;Сначала ставим Extras
Run("1Extras.exe")
WinWaitActive("Windows Sidebar")
Send("{ENTER}")
WinWaitActive ("Microsoft Visual C++ 2005 Redistributable")
WinWaitClose ("Microsoft Visual C++ 2005 Redistributable")

;Теперь ставим Alky for Application
ShellExecute("2Alky for Application.msi")
WinWaitActive("Alky for Applications (Windows XP) Setup")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "SHORT GRAPHICAL VERSION")
Send("{SPACE}")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Destination Folder")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Product Key")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Ready to install")
Send("{ENTER}")
WinWaitActive("Alky for Applications (Windows XP) Setup", "Complete!")
Send("{ENTER}")
;Ставим строчку выжидания закрытия
WinWaitClose("Alky for Applications (Windows XP) Setup")

;Сейчас поставим Sidebar
Run("3WindowsVistaSidebar.exe")
WinWaitActive("Windows Sidebar 6.0 Setup")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Press Page Down to see the rest")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Check the components you want to install")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Select some final options")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Completing installation...")
Send("{ENTER}")
WinWaitActive("Windows Sidebar 6.0 Setup","Click Finish to close this wizard.")
Send("{SPACE}")
Send("{ENTER}")

Собсно, мне кажется именно поэтому (доли секунд, однако все реально...)
Врядли правда, хотя скрипт вроде правильный (не будем учитывать Product key :) )

Еще посоветую команду Sleep, после установки Alky, секунд 5-10

teverus 11-08-2009 22:07 1191381

Спасибо за советы, но лажа все та же... :(
Хочешь,скину тебе файлы, попробуешь? (Если, конечно, есть время)

Та пробовал я.... Думал уже и о перезагрузке, но это все не то...
Может, msi как-то хакнуть, но потом собирать тяжело...

teverus 12-08-2009 00:17 1191463

Спасибо огромное,Nik_rus!
Руки у меня действительно кривые, а Sleep на 10 сек поставить не хватило терпения... Как говорил бобер Дэг: "Problem... solved!"
Мега респект!!!


Время: 07:54.

Время: 07:54.
© OSzone.net 2001-