sproxy
Full Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору asdfzxcv 12:46 02-04-2009 Цитата: помогите пожалуйстаб вот есть код окошко с табами | Код: #include <GUIConstants.au3> #Region ### START Koda GUI section ### Form= Opt("GUICoordMode", 1) $Form1 = GUICreate("Form1", 323, 238, 103, 133) $tab=GUICtrlCreateTab(5, 1, 299, 299) $tab0=GUICtrlCreateTabitem ("tab0") $Button1 = GUICtrlCreateButton("Test1", 64, 80, 75, 25, 0) $Label1 = GUICtrlCreateLabel("ON 1111", 160, 80, 91, 31) $tab1=GUICtrlCreateTabitem ( "tab1") $Button2 = GUICtrlCreateButton("Test2", 64, 80, 75, 25, 0) $Label2 = GUICtrlCreateLabel("ON 2222", 160, 80, 91, 31) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Select Case $nMsg = $GUI_EVENT_CLOSE Exit Case $nMsg = $Button1 _CheckFileExists("c:\windows1", $Label1) Case $nMsg = $Button2 _CheckFileExists("c:\windows2", $Label2) EndSelect WEnd Func _CheckFileExists($sFilePath, $hControlId) If FileExists($sFilePath) Then GUICtrlSetFont($hControlId, 14, 800, 2, "Monotype Corsiva") GUICtrlSetColor($hControlId, 0x0FFA00) Else GUICtrlSetFont($hControlId, 14, 800, 2, "Monotype Corsiva") GUICtrlSetColor($hControlId, 0xFF0000) EndIf EndFunc | Добавлено: asdfzxcv 10:38 01-04-2009 Цитата: только не пойму он работает только по локальному хосту 127.0.0.1 ? а по сети с удалённым компом он не будет работать ? напрмер с 192.168.1.30 у меня не работает | вот так должен работать: Код: #region: - Option Opt('MustDeclareVars', 1) Opt('TrayIconDebug', 1) Opt('TrayIconHide', 0) #endregion _TcpCheckSocet_CloseOpen('192.168.0.2', 80, 1, 1) _TcpCheckSocet_CloseOpen('192.168.0.2', 8081, 1, 1) ; #FUNCTION# ==================================================================================================================== ; Name...........: _TcpCheckSocet_CloseOpen ; Description ...: Проверка TCP сокета: свободен/занят ; Syntax.........: _TcpCheckSocet_CloseOpen($sIp, $iPort, [, $iShowMsg=0] [, $iTCPStartup=0]) ; Parameters ....: $sIp - Ip адрес (IpV4) ;~ $iPort - Порт подключения ;~ $iShowMsg - (1/0) Показывать/не показывать сообщение о результате ;~ $iTCPStartup - (1/0) Инициировать/не инициировать использование служб TCP ; Return values .: Success - Идентификатор сокета ; Failure ;~ |0 - Ошибка иницилизации использования службы TCP ;~ |-1 - Порт подключения закрыт ; Author ........: `p r o x y (icq 729406) ; Related .......: TCPConnect ; Link ..........; Справка AutoIt > Указатель функций > Обработка TCP и UDP > TCPConnect ;~ Autoit Help > Function Reference > Network Function > TCPConnect ;~ http://www.autoitscript.com/autoit3/docs/functions/TCPConnect.htm ; Example .......; Yes ; =============================================================================================================================== Func _TcpCheckSocet_CloseOpen($sIp, $iPort, $iShowMsg=0, $iTCPStartup=0) If $iTCPStartup == 1 Then If TCPStartUp() == 0 Then Return 0 EndIf Local $hSocket, $sMsgText, $iIcon $hSocket = TCPConnect($sIP, $iPort) If $hSocket == -1 Then $sMsgText = 'Результат проверки: ' & @TAB & 'Сокет закрыт ' $iIcon = 16+262144 Else $sMsgText = 'Результат проверки: ' & @TAB & 'Сокет открыт ' & @CRLF & 'Идентификатор сокета: ' & @TAB & $hSocket $iIcon = 64+262144 TCPCloseSocket($hSocket) EndIf If $iTCPStartup == 1 Then TCPShutdown() If $iShowMsg == 1 Then MsgBox($iIcon, 'Проверка TCP сокета: закрыт/открыт', _ 'Ip адрес подключения: ' & @TAB & $sIp & @CRLF & _ 'Порт подключения: ' & @TAB & $iPort & @CRLF & @CRLF & _ $sMsgText, 30) EndIf Return $hSocket EndFunc;==>_TcpCheckSocet_CloseOpen | не забывайте разрешать (открывать) исходящие/входящие подключения на к-рах источника/назначения (off firewalls / откл Брандмауэры) Добавлено: YSTRIK 08:32 01-04-2009 Цитата: я немного не так сформулировал вопрос, оно и так внутри цикла, мне нужно, что бы после проверки если условие верно после Then подать команду на поднятие наверх скрипта (на метку или ещё как то), и повторять уже с верхнего куска. | 1. лучше опубликайте участок кода вашего скрипта по данному вопросу, так легче будет показать на примере ))) 2. а в общем, можно и так: Код: #region: - Option Opt('MustDeclareVars', 1) Opt('TrayIconDebug', 1) Opt('TrayIconHide', 0) #endregion _Loop(1, 20) Func _Loop($iStart, $iEnd, $iInstance=1) For $i=$iStart To $iEnd ToolTip('Цикл запещен ' & $iInstance & ' раз(а)', 10, 100, '$i = ' & $i) Sleep(1000) If $i == 5 Then Return _Loop(6, 20, 2) If $i == 10 Then Return _Loop(11, 20, 3) If $i == 15 Then Return _Loop(16, 20, 4) If $i == 20 Then Return MsgBox(64, '_Loop', 'Внимание!' & @CRLF & 'Обработка цикла завершенна') Next EndFunc | Добавлено: XpycTMD 14:05 02-04-2009 Цитата: Возможно ли сделать Мини текстовой редактор со следующими функциями: | Не очень легкая задача. Вариант 1 Вариант 2 Вариант 3 Добавлено: Цитата: Я так понял с вашего примера . в локальной сети тоесть с шары проверят версию файла . Тоесть для интернета надо сперва этот фаил скачать а потом проверять ? | ViSiToR верно сказал, и идея классная. а деальше по аналогии: - скаченный файл в temp - закрыть программу - запустиь скаченный файл из temp - заменить им файл программы - запустить программу - закрыть скаченный файл из temp + можно добавить, что бы скачивание файла из интернет выполнян не файл программы, а еще один файл, котрый будет браться из основного (FileInstall). Тогда скачивание файла можно сделать и со строкой загрузки, и с кнопочкой отмена )) ViSiToRб а что выполняет вот это: ViSiToR 14:22 01-04-2009 Цитата: Run(@ComSpec & ' /c Ping -n 2 localhost > nul & Move /y "' & _ @TempDir & '\' & @ScriptName & '" "' & @ScriptFullPath & '" & Start "' & @ScriptFullPath & '"', '', @SW_HIDE) | пингует или же те пункты из текста выше (а деальше по аналогии: ) ? | Всего записей: 556 | Зарегистр. 21-11-2007 | Отправлено: 17:04 02-04-2009 | Исправлено: sproxy, 18:15 02-04-2009 |
|