Page 1 of 2

Python for stealth client

Posted: 30.10.2014 6:51
by Half-Life
Всем добрый день. Если тут есть ребята которые пишут на питоне, объясните как подружить питон и стелс. Python 3.4.2 (v3.4.2:ab2c023a9432, Oct 6 2014, 22:15:05) [MSC v.1600 32 bit (Intel)] on win32, Stealth v.: 6.5.2

Re: Python for stealth client

Posted: 30.10.2014 16:51
by nah nah
через dll

Code: Select all

import time
import ctypes
import sys

dll = ctypes.WinDLL('script.dll')
dll.StartStealthPipeInstance(sys.executable.encode())

dll.Script_Connect()
for i in range(5):
    dll.Script_AddToSystemJournal(ctypes.c_wchar_p('steel here'))
    time.sleep(1)
dll.Script_Disconnect()

dll.CorrectDisconnection()

Re: Python for stealth client

Posted: 31.10.2014 0:04
by Vizit0r
если ты про внешние скрипты - там там 2 разных обертки от разных людей было.

Re: Python for stealth client

Posted: 01.11.2014 18:21
by Half-Life
nah nah wrote:через dll

Code: Select all

import time
import ctypes
import sys

dll = ctypes.WinDLL('script.dll')
dll.StartStealthPipeInstance(sys.executable.encode())

dll.Script_Connect()
for i in range(5):
    dll.Script_AddToSystemJournal(ctypes.c_wchar_p('steel here'))
    time.sleep(1)
dll.Script_Disconnect()

dll.CorrectDisconnection()
Шляпа это всё. Для начала там нету такой функции как StartStealthPipeInstance, там есть функция StartStealthSocketInstance Во вторых когда запускаешь этот скрипт он срабатывает только один раз, если второй раз нажать старт отрывает новый стелс.

Пользуюсь обёрткой от Lorenzo Boydon Persichetti тыц что бы посмотреть, но у меня возникли пару траблов:
SomeFunc

Code: Select all

def ConnectICQ():
    while not ICQConnected():
        AddToSystemJournal('Коннектимся к аське...');
        ICQConnect(ICQUIN,ICQPWRD);
        Wait(5000)
        i=+1
        if i>10:
          AddToSystemJournal('Превышен лимит на попытку подконнектиться к аське. Скрипт остановлен.');
          SystemExit()
    AddToSystemJournal('Подключились к аське.');
в системный журнал стелса выводит.

Code: Select all

16:27:19:772 [TestChar]: Законнектились.
16:27:19:774 [TestChar]: Коннектимся к Аське...
16:27:24:777 [TestChar]: Подключились к аське.
Понимаю что дело в кодировке, но не могу понять как исправить. Если вывести через принт

Code: Select all

print('ывф')
в системный журнал выводит нормально

Code: Select all

16:43:31:398 [TestChar]: ывф
и ещё трабл - не приходят сообщения в аську.
OtherSomeFunc

Code: Select all

def SendMsg():
    if not ICQConnected:
        ConnectICQ()
    now_time = datetime.datetime.now()
    ICQSendText(ICQDst, 'В'+ now_time.strftime("%d.%m.%Y %H:%M") +DestinationMsg);
    AddToSystemJournal('В аську было отправлено сообщение: В '+now_time.strftime("%d.%m.%Y %H:%M") +' '+DestinationMsg);
    Wait(2000)
вот функция из обёртки

Code: Select all

def ICQSendText(DestinationUIN, Text):
	return stealth_dll.Script_ICQ_SendText(DestinationUIN, Text)
если написать на паскале, сообщения приходят.

P.S. Ещё стелс не работает на питоне 3.4, а очень хотелось бы)

Re: Python for stealth client

Posted: 01.11.2014 18:45
by nah nah
Half-Life wrote: Шляпа это всё. Для начала там нету такой функции как StartStealthPipeInstance, там есть функция StartStealthSocketInstance Во вторых когда запускаешь этот скрипт он срабатывает только один раз, если второй раз нажать старт отрывает новый стелс.
Тогда ещё не было обёртки от Бойдона, были сокеты, но функция называлась именно StartStealthPipeInstance. скриптик старый, кинут как пример. Новый стелс этого у меня не было. У меня просто не было реакции на второй запуск.
Half-Life wrote: если написать на паскале, сообщения приходят.
P.S. Ещё стелс не работает на питоне 3.4, а очень хотелось бы)
это к Визу =)

По поводу кодировок.
Кодируй скрипт в utf-8 без bom

а в обёрке print не привязан к сисжурналу?

Re: Python for stealth client

Posted: 01.11.2014 18:51
by Vizit0r
с кодировками разбирайтесь сами, тут я вам не советчик. Длл хочет увидеть там обычный уникодный PWideChar, это не анси с его кодировками.
Впрочем, с вайд тоже можно накуралесить с кодировками, что там походу и произошло.

А питона 3.4 у меня небыло еще, как раз повод проверить.

Re: Python for stealth client

Posted: 02.11.2014 3:11
by Half-Life
картинка
Image

Re: Python for stealth client

Posted: 02.11.2014 3:12
by Half-Life
nah nah wrote: Тогда ещё не было обёртки от Бойдона, были сокеты, но функция называлась именно StartStealthPipeInstance. скриптик старый, кинут как пример. Новый стелс этого у меня не было. У меня просто не было реакции на второй запуск.
Тогда мои извинения))
nah nah wrote: а в обёрке print не привязан к сисжурналу?
неа
Vizit0r wrote:с кодировками разбирайтесь сами, тут я вам не советчик. Длл хочет увидеть там обычный уникодный PWideChar, это не анси с его кодировками.
Впрочем, с вайд тоже можно накуралесить с кодировками, что там походу и произошло.

А питона 3.4 у меня небыло еще, как раз повод проверить.
Пока разберусь можно юзать print()

Re: Python for stealth client

Posted: 02.11.2014 8:04
by Vizit0r
а что, в питоне нельзя задать выходную кодировку юникода, только кои8-р?

Re: Python for stealth client

Posted: 02.11.2014 9:33
by Half-Life
Vizit0r wrote:а что, в питоне нельзя задать выходную кодировку юникода, только кои8-р?
ПОчему нельзя? Можно. Кракозябры по другому выглядеть будут.

Как подключить ивенты? кто знает?

Re: Python for stealth client

Posted: 02.11.2014 10:16
by Vizit0r
я подозреваю, что если вместо кодировки кои8-р поставить вин1251, то крокозябы в стелс будут приходить нормальными буквами.

Re: Python for stealth client

Posted: 02.11.2014 11:42
by Half-Life
Vizit0r wrote:я подозреваю, что если вместо кодировки кои8-р поставить вин1251, то крокозябы в стелс будут приходить нормальными буквами.
Неа. Сохранил скрипт в вин1251, кракозябры стали вот такими
ла бла бла

Re: Python for stealth client

Posted: 02.11.2014 11:53
by Vizit0r
причем тут скрипт?
кодировка строки, отсылаемой параметром в AddToSystemJournal.

Re: Python for stealth client

Posted: 02.11.2014 12:24
by drabadan
у меня кракозябры были когда я нотпаде++ не ту кодировку поставил. Может автор также заморочился и надо все го то поставить все обратно?

Re: Python for stealth client

Posted: 02.11.2014 12:33
by Vizit0r
drabadan причем тут файл, если дело в привычке питона пихать кои8р везде?