1. дело вкуса, можно и в TEMP... но если скрипт зависнет, все сохранения пропадут
2. насколько помню, Вы его использовали неправильно, но запустить службу через реестр всё равно не выйдет, проще всего через
WMI
3. нет, без всяких библиотек,
например, следующий код
Код:
Select
Case $sLog1_2 = '2'
$Save_MU = 'auto'
Case $sLog1_2 = '3'
$Save_MU = 'demand'
Case $sLog1_2 = '4'
$Save_MU = 'disabled'
Case $sLog1_2 = '0'
$Save_MU = 'boot'
Case Else
$Save_MU = 'system'
EndSelect
Select
Case $sLog2_2 = '2'
$Save_BITS = 'auto'
Case $sLog2_2 = '3'
$Save_BITS = 'demand'
Case $sLog2_2 = '4'
$Save_BITS = 'disabled'
Case $sLog2_2 = '0'
$Save_BITS = 'boot'
Case Else
$Save_BITS = 'system'
EndSelect
Select
Case $sLog3_2 = '2'
$Save_Event = 'auto'
Case $sLog3_2 = '3'
$Save_Event = 'demand'
Case $sLog3_2 = '4'
$Save_Event = 'disabled'
Case $sLog3_2 = '0'
$Save_Event = 'boot'
Case Else
$Save_Event = 'system'
EndSelect
эквивалентен такому:
Код:
Dim $aSvcState[5]=['boot','','auto','demand','disabled']
$Save_MU = $aSvcState[$sLog1_2]
$Save_BITS = $aSvcState[$sLog2_2]
$Save_Event= $aSvcState[$sLog3_2]
4. если ф-ций используется мало и они простые, можно их перенести в свой код, но придется разобраться в их работе, плюсы - лучшее понимание своего скрипта, а значит больший над ним контроль (в чужих библиотеках нередки ошибки или нестыковки с версиями AutoIT)
5.
AutoIt Wrapper GUI - Расширенная компиляция скриптов