Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Аватара для nyevgen

Пользователь


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

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


Наверняка кому-то еще пригодится. Нужно совместить это

Код: Выделить весь код
;нестандартное меню скрипта
Opt("TrayMenuMode", 1)
;меню скрипта - кнопка Выход
Global $exititem = TrayCreateItem("Выход")
TraySetState()
TraySetIcon("shell32.dll",156)
;всплывающая подсказка при наведении мыши
TraySetToolTip('Ping My Lan')
While 1
    $msg = TrayGetMsg()
    Select
    Case $msg = $exititem
    Exit
EndSelect

;цикл работы скрипта
$i += 1
    If $i = 1000 Then ;если прошло 10 секунд...
    If Ping("127.0.0.1") = 0 Then ;если машины нет в сети...
	TraySetIcon("shell32.dll",338);меняем иконку
	TraySetToolTip('Ping My Lan - Юзера нет в сети');всплывающая подсказка при наведении мыши
	If ProcessExists("ваш процесс") Then Run(@ComSpec & " /C sc stop служба", "", @SW_HIDE);проверяем наличие запущенного процесса службы "ваша служба", если есть - останавливаем службу.
	Else ;если машина есть в сети...
	TraySetIcon("shell32.dll",239);меняем иконку
	TraySetToolTip('Ping My Lan - Юзер в сети');всплывающая подсказка при наведении мыши
    If Not ProcessExists("ваш процесс") Then Run(@ComSpec & " /C sc start служба", "", @SW_HIDE);проверяем наличие запущенного процесса службы "ваша служба", если нет - запускаем службу.
	EndIf
    $i = 0 ;обнуляем счетчик
    EndIf
    Sleep(10)
WEnd
и вот это

Код: Выделить весь код
#include <GUIConstantsEx.au3>
#include <Constants.au3>
#include <GuiIPAddress.au3>
#include <WindowsConstants.au3>

Global $nForm, $hIPAddress, $sLastIP
Global $START_IP = "127.0.0.1"

Opt("TrayMenuMode", 1)

$hIp = TrayCreateItem("IP Ping")
TrayCreateItem("")
$hExit = TrayCreateItem("Exit")
TraySetState()

$start = 0
While 1
    $msg = TrayGetMsg()
    Switch $msg
        Case $hIp
            TrayItemSetState($hIp, $TRAY_UNCHECKED + $TRAY_DISABLE)
            TrayItemSetState($hExit, $TRAY_DISABLE)
            $sIP = _GuiCreate()
            If Not (@error) Then MsgBox(0, "", 'IP - ' & $sIP)
            TrayItemSetState($hIp, $TRAY_ENABLE)
            TrayItemSetState($hExit, $TRAY_ENABLE)

        Case $hExit
            Exit

    EndSwitch
WEnd

Func _GuiCreate()

    $nForm = GUICreate("", 223, 102, -1, -1, BitOR($WS_SYSMENU, $WS_CAPTION, $WS_POPUP, $WS_POPUPWINDOW, $WS_BORDER, $WS_CLIPSIBLINGS), BitOR($WS_EX_TOPMOST, $WS_EX_WINDOWEDGE))
    $hIPAddress = _GUICtrlIpAddress_Create($nForm, 24, 16, 162, 21)
    If Not $sLastIP Then
        _GUICtrlIpAddress_Set($hIPAddress, $START_IP)
    Else
        _GUICtrlIpAddress_Set($hIPAddress, $sLastIP)
    EndIf
    $Button1 = GUICtrlCreateButton("Ok", 144, 64, 43, 25)
    $Button2 = GUICtrlCreateButton("Cancel", 64, 64, 75, 25)

    GUISetState(@SW_SHOW, $nForm)

    While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
            Case $GUI_EVENT_CLOSE, $Button2
                GUIDelete($nForm)
                Return SetError(1, 0, 0)
            Case $Button1
                $sLastIP = _GUICtrlIpAddress_Get($hIPAddress)
                GUIDelete($nForm)
                Return $sLastIP
        EndSwitch
    WEnd

EndFunc   ;==>_GuiCreate
А то у меня ничего не выходит.
Нужно следующее:
- есть скрипт, пингует - откл/вкл службу. как сделать чтоб еще в контекстном меню был пункт - IP - выскакивало окошко где вводится другой ip для последующего пингования и откл/вкл службы соотвественно.

Зараннее спасибо!!!

Отправлено: 22:35, 05-06-2010 | #11