Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Как прописать ключи запуска для ярлыка

Ответить
Настройки темы
Как прописать ключи запуска для ярлыка

Новый участник


Сообщения: 11
Благодарности: 4

Профиль | Отправить PM | Цитировать


Всем привет, помогите с командой для AutoIt, которая сможет прописать ключи запуска для ярлыка SpeedFan, который создается после установки на рабочем столе (/NOSMARTSCAN /NOPCISCAN). Заранее спасибо.

Отправлено: 15:42, 09-04-2017

 

Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


anton2887, на каком именно Рабочем столе создаётся ярлык при установке — на Общем или Пользовательском? Какое имя носит файл ярлыка?

Отправлено: 16:07, 09-04-2017 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 11
Благодарности: 4

Профиль | Отправить PM | Цитировать


На пользовательском рабочем столе. Имя ярлыка 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)

Последний раз редактировалось anton2887, 09-04-2017 в 17:14.


Отправлено: 17:08, 09-04-2017 | #3


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата anton2887:
Я попробовал написать свой первый скрипт для автоматической установки speedFan. »
Не вполне удачно попробовали. Почему "Program Files (x86)"? А если установка будет производиться на x86 ОС, тогда что?

В данном случае вообще нет никакой нужды в играх с кнопконажимательством, поскольку инсталлятор NSIS предусматривает штатный способ «тихой» установки — Common Options:
Код: Выделить весь код
"instspeedfan452.exe" /S
В общем и целом это может выглядеть примерно так:
Скрытый текст
Код: Выделить весь код
#pragma compile(ExecLevel, requireAdministrator)
#pragma compile(x64, false)


#include <FileConstants.au3>
#include <File.au3>


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)
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:35, 09-04-2017 | #4


Новый участник


Сообщения: 11
Благодарности: 4

Профиль | Отправить PM | Цитировать


Это мой первый скрипт, осваиваю это дело пару дней и делаю только для собственного компьютера, использую только x64 битную систему. У меня все получилось, кроме прописи ключей в свойства ярлыка.

Отправлено: 18:57, 09-04-2017 | #5


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


anton2887, ясно. Тем не менее, старайтесь сразу учитывать подобные моменты. И да — MouseClick() использовать следует в совсем уж крайних случаях, когда не работает ни обработка стандартных диалогов и сообщений, ни посылка клавиш.
Это сообщение посчитали полезным следующие участники:

Отправлено: 19:03, 09-04-2017 | #6


Новый участник


Сообщения: 11
Благодарности: 4

Профиль | Отправить PM | Цитировать


Спасибо Вам большое, буду учитывать на будущее, но этот язык уж очень сложно дается, хотя попробовав-стало интересно. И еще тогда можно вопрос, как вы узнали в какой именно раздел реестра нужно импортировать настройки?

Отправлено: 21:04, 09-04-2017 | #7


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Установил и посмотрел. Только никакого импорта в коде нет. Простой запрос значения параметра.

Отправлено: 21:32, 09-04-2017 | #8


Старожил


Сообщения: 352
Благодарности: 44

Профиль | Отправить PM | Цитировать


anton2887, Создание ярлыка с параметрами запуска делайте с помощью FileCreateShortcut

Отправлено: 11:55, 14-06-2017 | #9



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » Как прописать ключи запуска для ярлыка

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - Как установить иконку для ярлыка Valek271183 Microsoft Windows 7 8 12-05-2014 19:47
Ключи параметра запуска Diablo 2 lord of destruction ALEKCEN Игры 0 09-01-2014 12:38
Разное - Как к программе IrRemote для Symbian 9.1, можно прописать команды под пульт? THEDOGG Программирование и базы данных 0 10-08-2012 23:33
Интерфейс - [решено] Как сменить значок для ярлыка на панели задач ? DreadMaster Microsoft Windows 7 3 13-09-2010 16:08
Как создать два ярлыка для включения и выключения одного сетевого подключения? PhantomLo Хочу все знать 2 14-07-2009 15:44




 
Переход