Что нового

Написание скрипта

DmitriyShh2

Новичок
Сообщения
7
Репутация
0
Здравствуйте, дорогие форумчане! Возникла проблема: Мне нужно написать скрипт, который должен читать из ini-файла айпи владельца(см. скрин) и создавать в интерфейсе программы(Koda) дополнительное окно с айпи и чебоксом. Суть программы такова: Я даю команду перезагрузить пк с определенным айпи( например: 192.168.1.10 ), на экране появляется окно с заголовком 192.168.1.10 и любым текстом. Спасибо! :smile:
 

Вложения

  • Снимок1.PNG
    Снимок1.PNG
    15.8 КБ · Просмотры: 27
  • Снимок.PNG
    Снимок.PNG
    14.6 КБ · Просмотры: 23

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Написание скрипта" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Глобальный модератор.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Помимо невнятной темы - текст просьбы написан точно также невнятно...
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Наверное нужно было нечто подобное.
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiIPAddress.au3>

#RequireAdmin
#NoTrayIcon

Global $aIni_Section = IniReadSection("IPs.ini", "Students IP")
If @error Then Exit 2
Global $aIP_CheckBoxes[$aIni_Section[0][0]], $aIP_Inputs[$aIni_Section[0][0]]
Global $iTopPos = 15, $iLeftPos = 15
Global $sCommentText = "Ты плохо себя вел"

$hMain = GUICreate("Administrator", 440, 220, -1, -1)

For $i = 1 To $aIni_Section[0][0]
	$aIP_CheckBoxes[$i - 1] = GUICtrlCreateCheckbox($aIni_Section[$i][0], $iLeftPos, $iTopPos, 100, 25)
	$aIP_Inputs[$i - 1] = _GUICtrlIpAddress_Create($hMain, $iLeftPos + 110, $iTopPos, 150, 25)
	_GUICtrlIpAddress_Set($aIP_Inputs[$i - 1], $aIni_Section[$i][1])
	$iTopPos += 30
Next

$idShutdown = GUICtrlCreateButton("Выключить", 300, 50, 120, 30)
$idReboot = GUICtrlCreateButton("Перезагрузить", 300, 80, 120, 30)
$idLogout = GUICtrlCreateButton("Выйти из системы", 300, 110, 120, 30)

GUISetState(@SW_SHOW, $hMain)


While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
		Case $idShutdown
			_Actions("-s")
		Case $idReboot
			_Actions("-r")
		Case $idLogout
			_Actions("-l")
	EndSwitch
WEnd

Func _Actions($sAction)
	For $i = 0 To UBound($aIP_CheckBoxes) - 1
		If _IsChecked($aIP_CheckBoxes[$i]) Then
			Run(@ComSpec & ' /c shutdown ' & $sAction & ' -t 15 -c "'& $sCommentText & '" -m \\' & _GUICtrlIpAddress_Get ($aIP_Inputs[$i]), '', @SW_HIDE)
;~ 			ConsoleWrite(@ComSpec & ' /c shutdown ' & $sAction & ' -t 15 -c "'& $sCommentText & '" -m \\' & _GUICtrlIpAddress_Get ($aIP_Inputs[$i]) & @CRLF)
		EndIf
	Next
EndFunc

Func _IsChecked($idControlID)
    Return BitAND(GUICtrlRead($idControlID), $GUI_CHECKED) = $GUI_CHECKED
EndFunc   ;==>_IsChecked


P.S. Одобрите сообщение после того, как он исправит ошибки свои
 
Верх