Как прописать ключи запуска для ярлыка
-
anton2887
Как прописать ключи запуска для ярлыка
Всем привет, помогите с командой для AutoIt, которая сможет прописать ключи запуска для ярлыка SpeedFan, который создается после установки на рабочем столе (/NOSMARTSCAN /NOPCISCAN). Заранее спасибо.
-
anton2887
Re: Как прописать ключи запуска для ярлыка
anton2887, на каком именно Рабочем столе создаётся ярлык при установке — на Общем или Пользовательском? Какое имя носит файл ярлыка?
-
Iska
Re: Как прописать ключи запуска для ярлыка
На пользовательском рабочем столе. Имя ярлыка SpeedFan. Я попробовал написать свой первый скрипт для автоматической установки speedFan. Когда программа устанавливается, то в папку кидаются файлы конфигурации, но мне нужно прописать ключи запуска для этой программы, чтобы она быстрее загружалась.
Код:
Код:
Код: Выделить всё
#RequireAdmin
AutoItSetOption('MouseCoordMode', 0)
Run(@ScriptDir & "\SpeedFan 4.52 Final.exe")
WinWaitActive("SpeedFan Setup: License Agreement")
MouseClick("primary", 376, 270, 1, 0)
WinWaitActive("SpeedFan Setup: Installation Options")
MouseClick("primary", 374, 269, 1, 0)
WinWaitActive("SpeedFan Setup: Installation Folder")
MouseClick("primary", 376, 269, 1, 0)
WinWaitActive("SpeedFan Setup: Completed")
MouseClick("primary", 377, 268, 1, 0)
FileCopy("D:\speed\speedfanevents.cfg", "C:\Program Files (x86)\SpeedFan", 0)
FileCopy("D:\speed\speedfanparams.cfg", "C:\Program Files (x86)\SpeedFan", 0)
FileCopy("D:\speed\speedfansens.cfg", "C:\Program Files (x86)\SpeedFan", 0)-
Iska
Re: Как прописать ключи запуска для ярлыка
Цитата anton2887:
Я попробовал написать свой первый скрипт для автоматической установки speedFan.
Не вполне удачно попробовали. Почему "Program Files (x86)"? А если установка будет производиться на x86 ОС, тогда что?
В данном случае вообще нет никакой нужды в играх с кнопконажимательством, поскольку инсталлятор NSIS предусматривает штатный способ «тихой» установки —
Код:
В общем и целом это может выглядеть примерно так:
Скрытый текст
[spoiler]Код: [/spoiler]
Я попробовал написать свой первый скрипт для автоматической установки speedFan.
Как прописать ключи запуска для ярлыка
Не вполне удачно попробовали. Почему "Program Files (x86)"? А если установка будет производиться на x86 ОС, тогда что?
В данном случае вообще нет никакой нужды в играх с кнопконажимательством, поскольку инсталлятор NSIS предусматривает штатный способ «тихой» установки —
Common Options
:Код:
Код: Выделить всё
"instspeedfan452.exe" /SВ общем и целом это может выглядеть примерно так:
Скрытый текст
[spoiler]Код: [/spoiler]
Код: Выделить всё
#pragma compile(ExecLevel, requireAdministrator)
#pragma compile(x64, false)
#include
#include
AutoItSetOption("MustDeclareVars", 1)
Local $sSourceFile = _PathFull("instspeedfan452.exe", @ScriptDir)
Local $aConfigFiles = ["speedfanevents.cfg", "speedfanparams.cfg", "speedfansens.cfg"]
Local $sFile
Local $sInstallPath
If FileExists($sSourceFile) Then
If RunWait("""" & $sSourceFile & """ /S") = 0 Then
$sInstallPath = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\SpeedFan", "")
For $sFile In $aConfigFiles
$sSourceFile = _PathFull($sFile, @ScriptDir)
If FileExists($sSourceFile) Then
FileCopy($sSourceFile, $sInstallPath & "\")
Else
ConsoleWriteError("Can't find source file [" & $sSourceFile & "]." & @CRLF)
EndIf
Next
With ObjCreate("WScript.Shell").CreateShortcut(_PathFull("SpeedFan.lnk", @DesktopDir))
.Arguments = "/NOSMARTSCAN /NOPCISCAN"
.Save()
EndWith
Else
ConsoleWriteError("Can't install SpeedFan 4.52 correctly." & @CRLF)
Exit(2)
EndIf
Else
ConsoleWriteError("Can't find source file [" & $sSourceFile & "]." & @CRLF)
Exit(1)
EndIf
Exit(0)-
anton2887
Re: Как прописать ключи запуска для ярлыка
Это мой первый скрипт, осваиваю это дело пару дней и делаю только для собственного компьютера, использую только x64 битную систему. У меня все получилось, кроме прописи ключей в свойства ярлыка.
-
anton2887
Re: Как прописать ключи запуска для ярлыка
anton2887, ясно. Тем не менее, старайтесь сразу учитывать подобные моменты. И да — MouseClick() использовать следует в совсем уж крайних случаях, когда не работает ни обработка стандартных диалогов и сообщений, ни посылка клавиш.
-
anton2887
Re: Как прописать ключи запуска для ярлыка
Спасибо Вам большое, буду учитывать на будущее, но этот язык уж очень сложно дается, хотя попробовав-стало интересно. И еще тогда можно вопрос, как вы узнали в какой именно раздел реестра нужно импортировать настройки?
-
anton2887
Re: Как прописать ключи запуска для ярлыка
Установил и посмотрел. Только никакого импорта в коде нет. Простой запрос значения параметра.
-
-TRM-
Re: Как прописать ключи запуска для ярлыка
anton2887, Создание ярлыка с параметрами запуска делайте с помощью FileCreateShortcut