terça-feira, 28 de setembro de 2010

nunca misture signed e usigned in c++

porque ?


#include
int main (void)
{
long a = -1;
unsigned b = 1;
printf ("%d\n", a > b);
return 0;
}


Setting environment for using Microsoft Visual Studio 2008 x86 tools.

D:\devel\src\others> cl compare.cpp
D:\devel\src\others> compare
1
D:\devel\src\others>


e agora:

Setting environment for using Microsoft Visual Studio 2008 Beta2 x64 cross tools

D:\devel\src\others> cl compare.cpp
D:\devel\src\others> compare
0
D:\devel\src\others>
entao cuidado ;)

segunda-feira, 23 de agosto de 2010

Download, build, install, upgrade, and uninstall Python packages -- easily!

fica simples instalar pacotes python com esta ferramenta:

http://pypi.python.org/pypi/setuptools

e para instalar os pacotes que sao dependencia do twisted, exeucte na linha de comando:

C:\>C:\Python27\Scripts\easy_install.exe zope.interface-3.6.1-py2.6-win32.egg


C:\>C:\Python27\Scripts\easy_install.exe zope.interface-3.6.1-py2.6-win32.egg

Quite eazy ;)

[]s

quinta-feira, 19 de agosto de 2010

Twisted Windows IOCP

Não precisei mudar nada no meu projeto, so instalar os modulos abaixo:

Python for Windows extensions
http://sourceforge.net/projects/pywin32/

Python wrapper module around the OpenSSL library
http://pypi.python.org/pypi/pyOpenSSL


tentei chamar no codigo iocpreactor.install(), porem parece que o Twisted faz isto automaticamente.

quarta-feira, 18 de agosto de 2010

Simple Twisted connector

Estou come'cando a gostar deste python, fiz alguns testes com o twisted, estou bem acostumado com o ASIO. foi bem facil entender o funcionamento basico.

vejam o conector que fiz para inciar meus testes ;)

# Clebson Derivan ( cderivan@gmail.com )
#
fixTestBot - provides FIX protocol bussiness level test automation.

# twisted imports
import sys
from twisted.internet import reactor, protocol
from twisted.python import log

class Protocol(protocol.Protocol):
def connectionMade(self):
self.transport.write(
"Twisted server v000\r\n")
print "We are connected"

def dataReceived(self, raw):
print "msg received: ", raw

class Factory(protocol.ReconnectingClientFactory):

def buildProtocol(self, addr):
self.resetDelay()
return Protocol()

if __name__ == "__main__":

log.startLogging(sys.stdout)

f
= Factory()
reactor.connectTCP(
"127.0.0.1", 9000, f )
reactor.run()


e roda bonitinho, simples e rapido, vejam que ele incrementa automatico o tempo de recone'cao.


C:\devel\python\fixTestSDK>connector.py
2010-08-20 16:50:42-0300 [-] Log opened.
2010-08-20 16:50:42-0300 [-] Starting factory <__main__.factory>
2010-08-20 16:50:43-0300 [Uninitialized]
will retry in 2 seconds

2010-08-20 16:50:43-0300 [Uninitialized] Stopping factory <__main__.factory>
2010-08-20 16:50:45-0300 [-] Starting factory <__main__.factory>
2010-08-20 16:50:46-0300 [Uninitialized]
will retry in 9 seconds

2010-08-20 16:50:46-0300 [Uninitialized] Stopping factory <__main__.factory>
2010-08-20 16:50:55-0300 [-] Starting factory <__main__.factory>
2010-08-20 16:50:55-0300 [Uninitialized] We are connected

se quizer testar, usa o netcat

C:\Documents and Settings\bzero>nc -L -p 9000
Twisted server v000