elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 05:14  


Tema destacado: [AIO elhacker.NET] Compilación herramientas análisis y desinfección malware

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez., EleKtro H@cker)
| | |-+  [Python] Importar Funciones de C++ a Modulo de Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python] Importar Funciones de C++ a Modulo de Python  (Leído 899 veces)
Di6it4Lj4ck4L

Desconectado Desconectado

Mensajes: 4


Ver Perfil
[Python] Importar Funciones de C++ a Modulo de Python
« en: 25 Abril 2011, 00:39 »

Buenas Noches  ;D.

Saludos a todos  ;), he colocado este post, porque tengo un pequeño problema  :huh:, deseo importar unas funciones de C++ que he creado en mi archivo pytiodvc.cpp, el cual utiliza como header tiniodbc.hpp, e utilizado el swig y bueno nada, y despues me dirigí al Boost y bueno no entendí nada, he intendo halar la función desde un archivo python utilizando el siguiente código:

Código
cdef extern from "pytiodbc.cpp":
openconn(char *dsn, char *user, char *pwd)
 
def connect(dsn,user,pwd)
python son de tipo str
if not isinstance(dsn,unicode):
if not isinstance(dsn,str):
raise ValueError("'dsn' requires text input, got %s" % type(text))
udsn=dsn.encode('UTF-8')
 
if not isinstance(user,unicode):
if not isinstance(user,str):
raise ValueError("'user' requires text input, got %s" % type(text))
uuser=user.encode('UTF-8')
 
if not isinstance(pwd,unicode):
if not isinstance(pwd,str):
raise ValueError("'user' requires text input, got %s" % type(text))
upwd=pwd.encode('UTF-8')
 
#Llamamos a la función definida en pytiodbc.cpp
ret=openconn(udsn,uuser,upwd)
 

el archivo pytiodbc.cpp que importo es uno realizado por mi para probar si podía llamar la funcion desde el C++, anexo el código.

Código
#include "tiodbc.hpp"
#include <iostream>
 
using namespace std;
 
bool openconn(char *dsn, char *user, char *pwd);
 
bool openconn(char *dsn, char *user, char *pwd){
 
// Crea la conexión al ODBC
   tiodbc::connection my_connection(dsn, user, pwd);
 
   // Verifica que la conexión sea éxitosa
   if (my_connection.connected())
       return true;
   else
       return false;
 
   // Se Desconecta
   my_connection.disconnect();
}

lo que deseo es poder llamar esa función desde Python  ;-), por ejemplo con un código así:

Código
import sys
import os
import pytiodbc
 
print "Ejemplo conectar a Base de datos"
resp = pytiodbc.connect ("DSN=Test","Test","Test")
print resp
os.system("pause")
 
 


Quisiera saber si esta manera es correcta ó por obligatoriedad tendría que útilizar el Swig ó Boost  :silbar:, espero su respuesta, y de antemano muchas gracias por la ayuda.


« Última modificación: 25 Abril 2011, 22:15 por Di6it4Lj4ck4L » En línea
lnvisible


Desconectado Desconectado

Mensajes: 456



Ver Perfil
Re: [Python] Importar Funciones de C++ a Modulo de Python
« Respuesta #1 en: 2 Mayo 2011, 19:05 »

¿Tienes un ejemplo de swig que funciona? Parte de un ejemplo y lo cambias.


En línea

Di6it4Lj4ck4L

Desconectado Desconectado

Mensajes: 4


Ver Perfil
Re: [Python] Importar Funciones de C++ a Modulo de Python
« Respuesta #2 en: 2 Mayo 2011, 19:08 »

Mmm los ejemplo que he encontrado de Swig han sido de C, y bueno la verdad no me sirve porque la clase esta en C++, pero de todas formas intentare a ver si puedo hacer algo, gracias por la respuesta  ;)
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Importar módulos en Python
Scripting
Hagoromo 1 1,749 Último mensaje 16 Enero 2008, 02:06
por Ragnarok
[Python]Problema al importar Urllib2
Scripting
O-LLOS-O 4 1,485 Último mensaje 3 Junio 2010, 15:18
por O-LLOS-O
[Python] modulo de C para python
Scripting
rponceaci4 3 1,415 Último mensaje 5 Noviembre 2010, 22:30
por rponceaci4
[python] Utilizar pyuic o importar *.ui directamente
Scripting
tonilogar 2 1,790 Último mensaje 3 Enero 2011, 18:19
por tonilogar
significado (algo como, para que sirve cada fucion) de las funciones en python
Scripting
BK201 1 72 Último mensaje 20 Mayo 2012, 23:48
por RyogiShiki
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines