elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


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


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18
81  Programación / Programación General / Duda respecto a C# y C++/CLI en: 3 Julio 2014, 18:55 pm
Hola a todos.

Tengo que realizar un trabajo a partir de un código escrito en C++/CLI.

El caso es que voy a tener que usar 2 puertos USB y FrameLink.

Necesitaré usar .NET para manejar ambos puertos, y tengo que aprender a usarla.

Mi pregunta es si es lo mismo usar .NET en C# que en C++/CLI. (Salvo diferencias como los punteros y que en C# el separador es '.' y en C++/CLI es '::'), en ese caso debo buscar manuales de .NET no de C++/CLI, ¿cierto?


También me estoy planteando usar alguna API de Java o de Python para esta labor, ya que creo que C++ y .NET será mucho mas complicado que usar Java o Python.
¿Os parece buena idea?
¿Tendré problemas para llamar desde Python o Java a las funciones escritas en C++/CLI?

Gracias y saludos.
82  Programación / .NET (C#, VB.NET, ASP) / Problema con C++/CLI: no encuentra namespaces [SOLUCIONADO] en: 3 Julio 2014, 12:39 pm
Hola a todos.

Tengo que hacer un trabajo utilizando un código ya escrito en C++/CLI.
El caso es que al intentar compilar ese código en mi pc, con visual studio 2012, el compilador da error porque faltan un montón de cosas.

Diré la más sorprendete, parace que no tengo el namespace System::Windows::Forms.

Ya lo he descargado por internet (es un dll), ahora necesito saber donde descomprimirlo.

¿Alguien me ayuda por favor?

Saludos y gracias.
83  Programación / .NET (C#, VB.NET, ASP) / Re: Duda con estándar C++ en: 3 Julio 2014, 01:35 am
Ok, muchas gracias por la respuesta.

He estado buscando tutoriales/manuales etc. de C++/CLI. NADA en español, ¿alguien tiene algún manual/tutorial en español por favor?

Saludos y gracias.
84  Programación / .NET (C#, VB.NET, ASP) / Duda con estándar C++ [SOLUCIONADO] en: 3 Julio 2014, 00:33 am
Hola a todos, tengo que realizar un trabajo en el que tengo que utilizar un código ya escrito de C++ y aparecen cosas que no he visto nunca.

Por ejemplo esto:
Código:
ref class MiClase{
   ...
}
¿Eso se supone que usa el garbage collector de .NET?
¿Por descontado que no es C++ estándar no?
¿Que compilador es compatible con esa cosa?

Mi otra pregunta es si esto es un puntero:
Código:
static SerialPort^ _serialPort;
De nuevo saber que compilador se traga eso y sobre todo si es o no un puntero.

Gracias, saludos.
85  Programación / Scripting / Re: Duda con problema: pisar todas las fichas de un tablero de ajedrez con caballo en: 8 Junio 2014, 19:57 pm
SOLUCIONADO:

El algoritmo estaba bien. El problema era que desde el main ponia al caballo en las coordenadas [2][2] por ej. pero antes de entrar al algoritmo no indicaba en el tablero que la casilla [2][2] estaba pisada.

Saludos.
86  Programación / Scripting / Pisar todas las fichas de un tablero de ajedrez con caballo[SOLUCIONADO] en: 8 Junio 2014, 19:52 pm
Hola a todos, se trata de resolver el problema de, dado un tablero de ajedrez de 5x5, pisar todas las casillas con un caballo (sin pisar la misma casilla 2+ veces)

Estoy intentando averiguar por qué este código no funciona
Código:
def nextMovement(posActual, movedores, iter):
    """ Devuelve el siguiente movimiento a realizar
        posActual: vector de 2 comp. (coords x e y) ==> posicion actual del caballo
        movedores: matriz de 2x8 que indica los posibles movimientos que se pueden hacer con el caballo
        iter: número que indica que movedor aplicar
    """
    casilla = [None] * 2
    casilla[0] = posActual[0] + movedores[0][iter]
    casilla[1] = posActual[1] + movedores[1][iter]
    return casilla

def casillaAdmisible(tablero, casilla):
    x=casilla[0]
    y=casilla[1]
    tam=len(tablero)
    if(x>=tam or y>=tam or x<0 or y<0 or tablero[x][y]!=0):
        return False
    return True

def mover(casilla, tablero, etapa):
    tablero[ casilla[0] ][ casilla[1] ] = etapa
    
def anularMovimiento(casilla, tablero):
    tablero[ casilla[0] ][ casilla[1] ] = 0

def backTrackingChessHorse(tablero, posActual, etapa, movedores):
    exito = False
    for i in range(len(movedores[0])):
        if(exito):
            break
        casilla = nextMovement(posActual, movedores, i)
        if not casillaAdmisible(tablero, casilla):
            continue
        aux=posActual
        mover(casilla, tablero, etapa)
        posActual=casilla
        if(etapa == len(tablero)**2):
            exito = True
        else:
            exito = backTrackingChessHorse(tablero, posActual, etapa + 1, movedores)
            if(not exito):
                anularMovimiento(casilla, tablero)
                posActual=aux
    return exito

def printTablero(tablero):
    for i in range(len(tablero)):
        print(tablero[i])
Problema: se consigue llegar a la etapa 25 (la última), pero nunca devuelve True, entre en bucle infinito.
No veo el error, ¿alguien puede ayudarme?
87  Programación / Programación C/C++ / Re: Duda minishell en: 4 Abril 2014, 00:53 am
Hola.

Por lo que leo intentas hacer algo como grep "[regexp]" < [fichero_de_texto], pero con grep no hace falta poner el '<', simplemente:
grep grep "[regexp]"  [fichero_de_texto]
Por ejemplo:
grep "asdasd" fich1 ==> ok
grep "asdasd" < fich1 ==> no ok

Además, cuando haces dup2(), esta función devuelve un nuevo descriptor de fichero, y deberías cerrar el antiguo, me explico:

Código:
    int fd=creat(fichName,0644);
    //Creamos un descriptor para el fichero (el mas bajo disponible
    //como no he cerrado ninguno, sería el 3 en principio).
    int nuevoFd=dup2(fd,1);
    //Duplico el descriptor 'fd' para asignárselo al descriptor 1 (stdout)
    //de tal manera que la salida estándar ha pasado a ser el fichero en
    //cuestión.
    close(fd);
    //Ya no necesito el antiguo descriptor, cierro.

Si no cierras el otro, creo que tendras el mismo descriptor apuntando a dos sitios a la vez.

Por otro lado, al crear el proceso hijo luego haces solo un if() para ver si es el hijo, pero el proceso padre debe esperar a que acabe el hijo. Así:
Código:
int n=fork();
switch(n){
case -1:
cerr<<"ERROR"<<endl;
break;
case 0:
//soy el proceso hijo, ahora voy a hacer mis cosas...
break;
default:
                       //soy el proceso padre, voy a esperar a mi hijo:
wait(NULL);
break;
}

Saludos.

PD. yo he tenido que hacer una práctica de crear un minishell, la tengo y está bastante documentada (el código con explicaciones y tal), si la quieres pídela.
88  Programación / Programación C/C++ / Problemas con google c++ testing framework y C++ en: 31 Marzo 2014, 15:21 pm
Hola a todos.

Estoy intentando usar el Google C++ testing framework con un pequeño código fuente pero no consigo hacerlo funcionar.

Ya he instalado el gtest, y he progado a hacer include de sus librerias en los ficheros de código que estoy compilando, y hasta ahí funciona.

El problema me surge cuando intento ya crear un test :
Código:
TEST(..., ...){ 
        EXPECT_GE(..., ...());
}

Intento compilar el fichero donde hago las pruebas con g++ <nombre_fichero> -o test y me da el siguiente error:
(Después de un montón de texto de error que no copio) collect2: ld devolvió el estado de salida 1

Alguien me ayuda por favor? Gracias.
89  Programación / Scripting / Re: Duda con decorador y parámetro self en Python en: 9 Marzo 2014, 15:40 pm
Subo el código, está en dos ficheros separados:

Fichero 1 (decoradores):
Código:
'''
Created on 26 Feb 2014

@author: dan
'''

from time import time

#Decora la función para sacar por pantalla el id del
#hilo que se está ejecutando
def printThreadName(_self):
    def _thread_i_am(function):
        def tim(*args,**kwargs):
            r = function(args,kwargs)
            print("I am ",_self.getName()," thread")
            return r
        return tim
    return _thread_i_am

FIchero 2 (clase que usa los decoradores)
Código:
import threading
from Decorators import printThreadName

class FileThread(threading.Thread):
    def __init__(self,_filePath):
        threading.Thread.__init__(self)
        self.larger_line=None;
        self.filePath=_filePath
    
    #Devuelve la línea mas larga de un fichero
    def __largerLine(self):
        ...
        ...
        

    def getLargerLine(self):
        return self.larger_line
    
    @printThreadName(self)
    def run(self):
        self.largerLine();


Saludos y gracias de antemano.
90  Programación / Scripting / Duda con decorador y parámetro self en Python en: 27 Febrero 2014, 01:21 am
Hola a todos.

Estoy intentando decorar el método de una clase. El decorador en cuestión tiene un parámetro.
Dentro de la clase intento decorar la función A() con este decorador (pasándole como parámetro 'self'), pero al llamar al método A() me da error:

" NameError: name 'self' is not defined "

¿Qué hago mal?

Gracias
Páginas: 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines