Ru-Board.club
← Вернуться в раздел «Программы»

» AutoIT

Автор: asdfzxcv
Дата сообщения: 11.07.2008 12:26
Привет Всем снова Я )
дальше продолжаю разбирать логи и возникают новые вопросы.
Вопрос звучит так:

Вот есть функция (цикл) она разбирает каждую строчку лога и если условие совпадает то показывает мне msg

$hFileRead = FileOpen(@ScriptDir&'\'&@MDAY&'-'&@MON&'-08-proxy.log', 0)
If $hFileRead = -1 Then exit

While 1
$ReadLine = FileReadLine($hFileRead)
If @error = -1 Then sleep(3000)
$aParse = StringRegExp($ReadLine, "([0-9].*)", 3)
    If @error Then ContinueLoop
If Int($aParse[0]) = 10 Then MsgBox(416,'Alert',$ReadLine)
WEnd

FileClose($hFileRead)

Каждый новый логфайл появлется каждый день с новым именем. (дата дня)
11-07-08-proxy.log
я этот вопрос решил так:
FileOpen(@ScriptDir&'\'&@MDAY&'-'&@MON&'-08-proxy.log', 0)

1)Но непонятно, как выберать год когда макросом представляется только четырёх значеное число 2008 а мне нужно 08 (пришлось вписать его тупо в ручную).

2) И самое главное, не понятно, как заставить скрипт когда наступят следующие стуки бросить старый лог-файл 11-07-08-proxy.log и взятся за разборку нового 12-07-08-proxy.log (притом только когда он появится потому что сутки перещёлкнутся то в 00.00 а люди через проксю полезут ближе к 8ми утра.)
Автор: Loopback
Дата сообщения: 11.07.2008 12:40
arr1val
Что-нибудь вроде этого?

Код: ; получим ключи и значения секции IP
$aIPSect = IniReadSection("ini.ini", "IP")
For $i = 1 To $aIPSect[0][0]
; получим значения IP
$aCurIPGroup = StringSplit($aIPSect[$i][1], "|")
; ... и директорий
$aCurDirGroup = StringSplit(IniRead("ini.ini", "DIR", $aIPSect[$i][0], "default"), "|")
For $j = 1 To $aCurIPGroup[0]
; выполним функцию
mm($aCurIPGroup[$j], $aCurDirGroup[$j])
Next
Next
Автор: Maza Faka
Дата сообщения: 11.07.2008 12:47
XpycTMD

Цитата:
а не подскажеш как это сделать

Можно и без CallBack функции

Код: #include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Dim $Label[6], $hLine[6]

$Form1 = GUICreate("Form1", 633, 454, -1, -1, BitOR($WS_MAXIMIZEBOX, $WS_MINIMIZEBOX, $WS_SYSMENU, $WS_CAPTION, _
$WS_POPUP, $WS_POPUPWINDOW, $WS_BORDER, _
$WS_SIZEBOX))

$vLine = GUICtrlCreateLabel("", 155, 75, 1, 195)
GUICtrlSetBkColor(-1, 0xFF0000)

Dim $aGraphPos = ControlGetPos($Form1, "", $vLine)
Global $Height = $aGraphPos[3]

Local $LabelTop = 95, $hLineTop = 120

For $i = 1 To 5
$Label[$i] = GUICtrlCreateLabel("Label1", 20, $LabelTop, 131, 20, $WS_BORDER)
GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKHEIGHT))

$hLine[$i] = GUICtrlCreateGraphic(6, $hLineTop, 300, 1)
GUICtrlSetResizing(-1, BitOR($GUI_DOCKLEFT, $GUI_DOCKTOP, $GUI_DOCKHEIGHT))
GUICtrlSetBkColor(-1, 0x000000)

$LabelTop += 30
$hLineTop += 30
Next

GUISetState(@SW_SHOW)

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_RESIZED, $GUI_EVENT_MAXIMIZE, $GUI_EVENT_RESTORE
_Resize()
EndSwitch
WEnd

Func _Resize()
Local $aLabelPos = ControlGetPos($Form1, "", $Label[1])
GUICtrlSetPos($vLine, $aLabelPos[0] + $aLabelPos[2] + 5, $aLabelPos[1] - 20, 1, $Height)
EndFunc
Автор: asdfzxcv
Дата сообщения: 11.07.2008 13:05

Цитата:
Код:StringTrimLeft(@YEAR, 2)

Цитата:
Код:StringTrimLeft(@YEAR, 2)

Спасибо получилось


Цитата:
Цитата:2) И самое главное, не понятно, как заставить скрипт когда наступят следующие стуки бросить старый лог-файл 11-07-08-proxy.log и взятся за разборку нового 12-07-08-proxy.log (притом только когда он появится потому что сутки перещёлкнутся то в 00.00 а люди через проксю полезут ближе к 8ми утра.)


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


помогите не получается.
я непойму сам принцип, это как то страую дату надо помещат ьв массив а потом сранивать текщую со старой? и не получается выйти из цикла while что бы эту дату перепроверить.
в общем каша.
Автор: arr1val
Дата сообщения: 11.07.2008 14:27
Loopback
Спасибо большое ! Чуть изменил и подправил, но без концепции не получилось бы. Спасибо!
Автор: NIKZZZZ
Дата сообщения: 11.07.2008 15:55
Вопросик:
Можно ли отследить изменения ClipBoard ?
Вариант с запоминанием и сравнением не слишком корректен.
Автор: ViSiToR
Дата сообщения: 11.07.2008 18:37
NIKZZZZ 16:55 11-07-2008
Цитата:
Можно ли отследить изменения ClipBoard ?

Можно, вот пример:


Код: #include <GUIConstants.au3>

HotKeySet("{ESC}", "OnAutoItExit")

Global Const $WM_DRAWCLIPBOARD = 0x0308
Global Const $WM_CHANGECBCHAIN = 0x030D

Global $hOrigWND, $hClip_Hook_GUI
SetClipboardViewer()

Global $iToolTipTimer = -1

While 1
Sleep(10)

If $iToolTipTimer <> -1 And TimerDiff($iToolTipTimer) > 5000 Then
$iToolTipTimer = -1
ToolTip("")
EndIf
WEnd

Func
SetClipboardViewer()
$hClip_Hook_GUI = GUICreate("_Clip_Hook_")

; remember last clip viewer in queue and set our GUI as first in queue
$hOrigWND = DLLCall("user32.dll", "hwnd", "SetClipboardViewer", "hwnd", $hClip_Hook_GUI)
$hOrigWND = $hOrigWND[0]

GUIRegisterMsg($WM_DRAWCLIPBOARD, "OnClipBoardChange")
GUIRegisterMsg($WM_CHANGECBCHAIN, "OnClipBoardViewerChange")
EndFunc

Func
OnClipBoardChange($hWnd, $Msg, $wParam, $lParam)
; do what you need when clipboard changes
ToolTip(ClipGet(), 0, 0)
$iToolTipTimer = TimerInit()

;send notification about clipboard change to next clipviewer
DllCall("user32.dll", "int", "SendMessage", "hWnd", $hOrigWND, "int", $WM_DRAWCLIPBOARD, "int", $wParam, "int", $lParam)
EndFunc

Func
OnClipBoardViewerChange($hWnd, $Msg, $wParam, $lParam)
; if our remembered previous clipviewer is removed then we must remember new next clipviewer
; else send notification about clipviewer change to next clipviewer

If $wParam = $hOrigWND Then
$hOrigWND = $lParam
Else
DllCall("user32.dll", "int", "SendMessage", "hWnd", $hOrigWND, "int", $WM_CHANGECBCHAIN, "hwnd", $wParam, "hwnd", $lParam)
EndIf
EndFunc

Func
OnAutoItExit()
If @HotKeyPressed = "{ESC}" Then Exit

;send notification that we no longer will be in clipboard hook queue
DLLCall("user32.dll", "int", "ChangeClipboardChain", "hwnd", $hClip_Hook_GUI, "hwnd", $hOrigWND)
EndFunc
Автор: NIKZZZZ
Дата сообщения: 11.07.2008 21:51
ViSiToR
Ok.
Приведенный пример позволяет отслеживать буфер, даже если в него повторно копируется таже информация.

Цитата:
Зато не вызывает конфликт с другими программами следящими за буфером обмена (aka Менеджеры б. обмена ).

У меня стоит ClCl, проблем пока не видел.

Автор: ViSiToR
Дата сообщения: 11.07.2008 22:54
NIKZZZZ 22:51 11-07-2008
Цитата:
У меня стоит ClCl, проблем пока не видел.

Да, действительно, CLCL не конфликтует, но я привык к ClipDiary, с ним есть траблы

Я кстати как то сам хотел написать подобный менеджер, AutoIt вроде имеет подходящие интсрументы, но вот руки всё никак не дотянутся... да и времени не хватает
Автор: NIKZZZZ
Дата сообщения: 12.07.2008 11:41
ViSiToR

Цитата:
Да, действительно, CLCL не конфликтует, но я привык к ClipDiary, с ним есть траблы

А вот интересно, можно ли полностью перехватить ClipBoard так, чтобы менеджер этого не увидел ?

ClipDiary - довольно интересная штучка, спасибо за ссылку.



Автор: ViSiToR
Дата сообщения: 12.07.2008 16:40
NIKZZZZ 12:41 12-07-2008
Цитата:
можно ли полностью перехватить ClipBoard так, чтобы менеджер этого не увидел ?

Менеджер не то что видит это, он просто подключается к общей (по умолчанию?) сессии буфера обмена, что в принципе и делает пример который я привёл (поэтому конфликтуют), вероятно есть возможность подключаться к б.обмена независимо, но я пока особо в этом не копался.
Автор: Hackproof
Дата сообщения: 12.07.2008 17:38
Делаю фоновую картинку на форму, и на ней расставляю кнопки.
Так вот - при наличии картинки кнопки не нажимаются. В том смысле, что визуально изображение кнопки не утапливается, и не выполняется функция OnEvent(кнопка, функция кнопки). Причем не нажимаются мышкой, если кнопкой Tab выбрать кнопку и нажать пробел, то кнопка работает. Как только комментирую строку с картинкой, все кнопки начинают нажиматься нормально. Обработку клика на картинку отключил, клик на форму тоже не обрабатывается, не могу понять причину. А картинка принципиально нужна.

Код: $Form = GUICreate("Form1", 650, 660, 198, 102)
GUISetOnEvent($GUI_EVENT_CLOSE, "FormClose")

GUICtrlCreatePic("X:\metro_map.jpg", 0, 0, 650, 720)

$vyb = GUICtrlCreateButton("", 392, 165, 17, 17, 0)
GUICtrlSetOnEvent($vyb, "vybClick")

;Дальше идет много кнопок и OnEvent...
;В конце код для всех кнопок типа:


Func akaClick()
;код
EndFunc
Автор: asdfzxcv
Дата сообщения: 12.07.2008 20:05
Поссмотрите плиз правельно ли я написал алгоритм отслеживания перехода на навые сутки компьютера?
Может кто знает более короткий путь.

Код: while 1
$d= (@MDAY&'-'&@MON&'-'&StringTrimLeft(@YEAR, 2))
while 1
$f=(@MDAY&'-'&@MON&'-'&StringTrimLeft(@YEAR, 2))
if string($d) <> $f Then exitloop
WEnd

MsgBox(416,'Alert','no- переход на следующие сутки')
wend
Автор: ViSiToR
Дата сообщения: 13.07.2008 04:03
Hackproof 18:38 12-07-2008
Цитата:
при наличии картинки кнопки не нажимаются

Трюк для обхода этой проблемы довольно прост... нужно использовать стиль $WS_CLIPSIBLINGS у контроля изображения, но для некоторых контролей сами кнопки нужно создавать раньше. Вот пример с кнопкой внутри Input'а:


Код: #include <GUIConstants.au3>

$Gui = GuiCreate("Test", 320, 100)

$Button = GUICtrlCreateButton("...", 290, 42, 18, 18)
$Input = GUICtrlCreateInput("C:\", 10, 40, 300, 22, $WS_CLIPSIBLINGS)

GUISetState()

While 1
$Msg = GUIGetMsg()
Switch $Msg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Автор: XpycTMD
Дата сообщения: 13.07.2008 08:12
Maza Faka 13:47 11-07-2008
Цитата:
Можно и без CallBack функции

Спасибо большое то что надо
Автор: Hackproof
Дата сообщения: 13.07.2008 13:26
Аналогично, всё заработало. Спасибо.
Автор: timsky
Дата сообщения: 13.07.2008 18:49
А есть возможность работы с почтой? Мне нужно забирать почту с pop3 ящика и складировать письма в отдельные файлы.
В инклудах есть inet.au3, но вдруг есть где подробнее об этом почитать + с примерами? И в нем не приема писем
Автор: timsky
Дата сообщения: 14.07.2008 03:43
Накатал дорген для друга:
1) Берет файл шаблона и кейвордов из INI
2) Берет кейворды построчно, заменяет ими ключевое слово в шаблоне и сохраняет как КЕЙВОРД.html


Код: ;====================================== Запрет запуска нескольких окон =================================================
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)

DirCreate("Ready")

;====================================== Грузим шаблон =================================================
$Template = IniRead("config.ini","Main","Template","")

$source = FileOpen ($Template, 0)
; Проверка возможности открытия файла
If $source = -1 Then
MsgBox(16, "Отсутствует шаблон!!!", "Нужен файл " & $Template & " в этой папке")
Exit
EndIf

FileClose($source)

;====================================== Грузим кейворды =================================================
$KeywordsFile = IniRead("config.ini","Main","KeywordsFile","")

$keywords = FileOpen($KeywordsFile, 0)
; Проверка возможности открытия файла
If $keywords = -1 Then
MsgBox(16, "Отсутствует шаблон!!!", "Нужен файл " & $KeywordsFile & " в этой папке")
Exit
EndIf

;====================================== Дергаем кеи построчно и втыкаем в новые файлы =================================================
While 1
$key = FileReadLine($keywords)
If @error = -1 Then ExitLoop
    $source = FileOpen ($Template, 0)
    $content = FileRead ($source)
    $contentNew = StringRegExpReplace ( $content, "<!--KEYWORD-->", $key )
    FileWrite ( "Ready\" & $key & ".html", $contentNew )
Wend

FileClose($source)
FileClose($keywords)

MsgBox (64, "Готово!" , "Шеф, усё готово!")
Автор: ViSiToR
Дата сообщения: 14.07.2008 04:07
timsky 04:43 14-07-2008
Цитата:
В чем проблема?
Как это ограничение обойти?

Проблема в том что в цикле постоянно вызывается FileOpen(), но закрывается он всего один раз и вне цикла, тут видимо есть ограничение на количество одновременных открытии файла (без закрытия).
В этом конкретном случае, как я понимаю, это лишнее, $content можно заполнить один раз перед началом цикла, также как и $contentNew:


Код: ;====================================== Запрет запуска нескольких окон ================================
If WinExists(@ScriptName) Then Exit
AutoItWinSetTitle(@ScriptName)

DirCreate("Ready")

;====================================== Грузим шаблон =================================================
$Template = IniRead("config.ini", "Main", "Template", "")

$source = FileOpen($Template, 0)
; Проверка возможности открытия файла
If $source = -1 Then
MsgBox(16, "Отсутствует шаблон!!!", "Нужен файл " & $Template & " в этой папке")
Exit
EndIf


FileClose($source)

;====================================== Грузим кейворды ===============================================
$KeywordsFile = IniRead("config.ini", "Main", "KeywordsFile", "")

$keywords = FileOpen($KeywordsFile, 0)
; Проверка возможности открытия файла
If $keywords = -1 Then
MsgBox(16, "Отсутствует шаблон!!!", "Нужен файл " & $KeywordsFile & " в этой папке")
Exit
EndIf


;====================================== Дергаем кеи построчно и втыкаем в новые файлы =================

$content = FileRead($Template)
$contentNew = StringRegExpReplace($content, "<!--KEYWORD-->", $key)

While 1
$key = FileReadLine($keywords)
If @error = -1 Then ExitLoop

FileWrite("Ready\" & $key & ".html", $contentNew)
WEnd

FileClose($keywords)

MsgBox(64, "Готово!", "Шеф, усё готово!")
Автор: dzeday
Дата сообщения: 14.07.2008 09:14
Народ, требуется помощь.
Необходимо получить список локальных пользователей, чтобы дальше сделать что-то подобное виндовому окошку "Запуск от имени". На данный момент существует только одна идея по этому поводу-это перенаправить в файл команду "net user" и потом оттуда читать пользователей. Может кто знает способ проще получить список локальных учеток на ПК? Поделитесь мыслями по этому поводу.
Автор: Maza Faka
Дата сообщения: 14.07.2008 10:12
dzeday
В помощь тебе WMI!
Получение списка всех свойств данного класса:

Код: Dim $strComputer = ".", $string

$objWMIService
= ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2")
$colItems = $objWMIService.ExecQuery("Select * from Win32_UserAccount")

For $objItem In $colItems
$string
&= "Caption - " & $objItem.Caption & @LF
$string &= "Account Type - " & $objItem.AccountType & @LF
$string &= "Disabled - " & $objItem.Disabled & @LF
$string &= "Domain - " & $objItem.Domain & @LF
$string &= "Full Name - " & $objItem.FullName & @LF
$string &= "Install Date - " & $objItem.InstallDate & @LF
$string &= "Local Account - " & $objItem.LocalAccount & @LF
$string &= "Lockout - " & $objItem.Lockout & @LF
$string &= "Name - " & $objItem.Name & @LF
$string &= "Password Changeable - " & $objItem.PasswordChangeable & @LF
$string &= "Password Expires - " & $objItem.PasswordExpires & @LF
$string &= "Password Required - " & $objItem.PasswordRequired & @LF
$string &= "SID - " & $objItem.SID & @LF
$string &= "SID Type - " & $objItem.SIDType & @LF
$string &= "Status - " & $objItem.Status
Next

FileDelete(@TempDir & "\accounts.txt")
FileWrite(@TempDir & "\accounts.txt", $string)
ShellExecute(@TempDir & "\accounts.txt")
Автор: SysLam
Дата сообщения: 14.07.2008 11:29
вариант через API:

Код: #include <array.au3>
$a = UserEnum("")
_ArrayDisplay($a)

Func UserEnum($sComputer = "")
Local $tBufPtr = DllStructCreate("ptr")
Local $tEntriesRead = DllStructCreate("dword")
Local $tTotalEntries = DllStructCreate("dword")
Local $aRet = DllCall("Netapi32.dll", "int", "NetUserEnum", _
"wstr", $sComputer, "dword", 1, "dword", 2, _
"ptr", DllStructGetPtr($tBufPtr), "dword", -1, _
"ptr", DllStructGetPtr($tEntriesRead), _
"ptr", DllStructGetPtr($tTotalEntries), "ptr", 0 )
If $aRet[0] Then Return SetError(1, $aRet[0])

Local Const $UF_ACCOUNTDISABLE = 0x2
Local $iEntriesRead = DllStructGetData($tEntriesRead,1)
Local $pBuf = DllStructGetData($tBufPtr,1)
Local $aRes[1] =[0]
Local $sUserInfo1 = "ptr;ptr;dword;dword;ptr;ptr;dword;ptr"
Local $tUserInfo1 = DllStructCreate ($sUserInfo1)
Local $zUserInfo1 = DllStructGetSize($tUserInfo1)

For $i=1 To $iEntriesRead
$tUserInfo1
= DllStructCreate($sUserInfo1, $pBuf+($i-1)*$zUserInfo1)
$tName = DllStructCreate("wchar[256]", DllStructGetData($tUserInfo1,1))
$tFlag = DllStructGetData($tUserInfo1,7)
If BitAnd($tFlag, $UF_ACCOUNTDISABLE)=0 Then
$aRes[0] +=1
ReDim $aRes[$aRes[0]+1]
$aRes[$aRes[0]] = DllStructGetData($tName,1)
EndIf
Next


DllCall("Netapi32.dll", "int", "NetApiBufferFree", "ptr", $pBuf)
Return $aRes
EndFunc
Автор: dzeday
Дата сообщения: 14.07.2008 15:23
Спасибо SysLam и Maza Faka за скорый ответ и оказанную помощь.
Через API то что хотел, через WMI-тоже хорошо, но больше телодвижений надо делать. Спасибо за оперативную помощь.
Автор: timsky
Дата сообщения: 14.07.2008 16:33
ViSiToR
Что-то я совсем намудрил на ночь глядя До цикла нужно было поставить тока:
$content = FileRead($Template)

А $contentNew вне цикла не срабатывает, да и не нужен он там

Спасибо!
Автор: dzeday
Дата сообщения: 14.07.2008 17:05
ничего не пойму скачал AutoIt v3.2.12.0, но теперь в GUI не работают стили управляющих элементов графического интерфейса пользователя. Рисую форму в Koda и при компеляции из SciTE вылетают ошибки, что нет переменных для управляющих стилей. Добавляю переменные, но стили все равно не отрабатывают


Код:
include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Моя форма", 212, 160, 575, 435)
$Combo1 = GUICtrlCreateCombo("Combo1", 16, 32, 177, 25)
GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
$Input1 = GUICtrlCreateInput("", 16, 72, 177, 24, $ES_PASSWORD)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Выполнить", 24, 112, 161, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd


Автор: NIKZZZZ
Дата сообщения: 14.07.2008 18:18
dzeday
Попробуй обновить AutoIt и Koda.
У меня Koda 1.7.0.5 (beta) создала


Код: #include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Моя форма", 208, 158, 576, 435)
$Combo1 = GUICtrlCreateCombo("Combo1", 16, 32, 177, 25)
GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif")
$Input1 = GUICtrlCreateInput("", 16, 72, 177, 24, $ES_PASSWORD)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Button1 = GUICtrlCreateButton("Выполнить", 24, 112, 161, 25)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit

EndSwitch
WEnd
Автор: ViSiToR
Дата сообщения: 14.07.2008 19:11
timsky 17:33 14-07-2008
Цитата:
$contentNew вне цикла не срабатывает

Точно, это я не обратил внимания на то что $key объявляется в цикле .
Автор: dzeday
Дата сообщения: 14.07.2008 22:27
NIKZZZZ

Цитата:
Попробуй обновить AutoIt и Koda.
У меня Koda 1.7.0.5 (beta) создала


Код: #include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Автор: timsky
Дата сообщения: 14.07.2008 23:27
ViSiToR
Фигня, за подсказку спасибо!

Никто не знает как можно Автоитом дернуть с pop3 ящика мыла? Там инклуд какой или другое решение...
Автор: Hackproof
Дата сообщения: 15.07.2008 03:03
Нужно получить в переменную текущий IP-адрес машины, на которой запускается скрипт. Посмотрел пример в шапке, ничего не понял... Судя по всему, там адрес извлекается из соединения самой программы с чем-то. У меня программа никуда не подключается, просто в зависимости от адреса будет читаться нужная секция из ini. При это функция _GetIP, которая вложена в Inet.au3, не подходит, в той сети нет доступа в интернет. Как бы выкрутиться?

___update:
Придумал вывод ipconfig направить в файл, и прочитать 8-ю строку, но как-то некрасиво...

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192

Предыдущая тема: Quintura Search


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.