Показать полную графическую версию : Вернуть текст окна сообщения ICQ или QIP...
sashadeg
03-08-2009, 14:59
Нужно вернуть текст входящих сообщений любого из этих клиентов... Лично у меня через ControlGetText не получилось...
Может ктонибудь знает другой способ???
ICQ или QIP »много всяких... конкретно редакция/версия
sashadeg
03-08-2009, 15:33
Цитата sashadeg:
ICQ или QIP »
много всяких... конкретно редакция/версия »
А какая у Вас есть, о той и опишите... Я побывал КИП Инфиум, ICQ LIte. (последние версии)
Belfigor
03-08-2009, 17:22
Если тебе нужно читать из заранее известных номеров то можно тупо отслеживать обновления в файлах лога и читать оттудова.
sashadeg
03-08-2009, 19:10
Мне нужно вот что.
Например:
Пришло соощение с текстом "run" - запуск run.exe
То есть отследить приход сообщения и выполнить КОНКРЕТНУЮ функцию.... Это возможно?
А интересная идея удаленного запуска.... Можно будет подумать... Сейчас что нибудь придумаем.....
sashadeg
03-08-2009, 21:35
Не так давно я нашел плагин для кипа, который управляет компьютером через сообщения от конкретного пользователя... Автор плагина, сказал что работать над ним не будет и передал все авторские права и исходники МНЕ... Вот только в Делфи я ничего не понимаю =\
Поэтому и хотел чтонибудь подобное сделать на аутоите...
Belfigor
04-08-2009, 16:29
Еще проще, если от конкретного пользователя то:
FileReadLine ( filehandle or "filename" [, line] )
Я так через квип в свое время узнавал состояние программы одной на своем компьютере и отдавал небольшие приказы :)
Может ктонибудь знает другой способ??? »
Может этот поможет: http://forum.ru-board.com/topic.cgi?forum=33&topic=10280
sashadeg
04-08-2009, 23:45
beve, я так и не понял, у них так "финалки" и не получилось? а то я обрадовался, что ктото уже придумал это... =)
через ControlGetText не получилось.. »по ходу работает только через буфер обмена, пример для квип инфиум:
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <SendMessage.au3>
#include <Clipboard.au3>
$xWnd = WinGetHandle("[CLASS:TfrmTabber.UnicodeClass]")
$hCtr = ControlGetHandle($xWnd, "", "TRichView1")
ConsoleWrite(_Control_GetText($hCtr) &@CRLF)
Func _Control_GetText($hWnd, $iStart = 0, $iEnd = -1)
Local $aRet, $pUnicode, $tData
If Not IsHWnd($hWnd) Then Return SetError(1, 0, False)
_SendMessage($hWnd, $EM_SETSEL, $iStart, $iEnd)
_SendMessage($hWnd, $WM_COPY, 0, 0)
_SendMessage($hWnd, $EM_SETSEL, -1, 0)
_ClipBoard_Open(0)
$pUnicode = _ClipBoard_GetDataEx($CF_UNICODETEXT)
_ClipBoard_Close()
$aRet = DllCall("kernel32.dll", "int", "lstrlenW", "ptr", $pUnicode)
$tData = DllStructCreate("wchar["& $aRet[0] &"]", $pUnicode)
Return DllStructGetData($tData, 1)
EndFunc
ADD: по ходу отладки вляпался в баг _ClipBoard_GetData() - там размер структуры задается статичным (8192 байт), в некоторых случаях (при малом размере данных) это приводило к обвалу скрипта - пока вышел из ситуации расчетом размера буфера через lstrlenW ... :idontnow:
Есть готовое решение: R&Q + Do It Remotely (подключение CMD.exe, полный его функционал)
А через командную строку можно и скрипты пользовать.
P.S. Можно еще по IRC протоколу компом управлять, без использования стороннего софта только силами autoit.
Belfigor Если тебе нужно читать из заранее известных номеров то можно тупо отслеживать обновления в файлах лога и читать оттудова.А примерчик не подскажешь???
На самом деле в 100 раз легче сделать все не с помощью программы, а с помощью протокола.
Я использовал XMPP aka Jabber, все работает на ура :jester:
Нароешь в том примере с ru-board, создание instant messaging бота.
Там есть jabbot2.au3 - на нем я собственно все и сделал.
Я кстати думал что эти XML чурки такие страшные которые бегают и раздают месаги, ан нет тут все простеньки и красивенько =) .
З.Ы. Все поставил в работу в фоновый режим, не мешатся чтобы.
З.Ы.Ы. Я правлю компом через мобилу ! (спс Bombus)
Если мысли о миранде не дают жить - вот то что можно выудить из программы:
ЧЧ:ММ:СС: 1233
Присылается когда кто-то (не будем показывать пальцем :biggrin: ) посылает сообщение "1233".
Если оставить исккомое окно открытым и работать с ним - все будет как по маслу.
Но если нет - то я даже не знаю как его достать (Dllcallback ?)
ИМХО, юзать какой-то другой месенжер для отправки и приема месаги из автоит скрипта сильный изврат, кроме ICQ (там же атомные бомбы делают, там все секретно),
легче изучить протокол, найти нужные UDF'ки...
Нашел в базе миранды:
,_________________
j /// _____________Рў
)__/(С—)
/__/
/__/
:lol:
Так у кого нибудь получилось вернуть текст из аськи???
Я написал уже практически всю программу для удаленного управления, но застрял на этом самом моменте когда надо чтоб последнее сообщение копировалось в командную строку!!!!....
Если получилось, напишите пожалуйста!!!!!
Я вот думал может эти сообщения из базы данных выудить.....Есть идеи???
А это по твоему что???
http://forum.oszone.net/post-1185962-11.html
А это по твоему что???
http://forum.oszone.net/post-1185962-11.html »
Я извиняюсь за тупой пост, но я начинающий программер и не совсем понимаю как єто использовать
Перед тобой наичистейшая функция для получения текста из окна QIP в чем проблема то?
Да не, это я понимаю...Как мне сделать чтоб она из аськи текст брала???....Там надо поменять название окна???
И еще одно. Что это за библиотека "kernel32.dll"????
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.