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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


  Mostrar Mensajes
Páginas: [1]
1  Programación / Programación Visual Basic / pasar de c a vb 6.0 en: 27 Abril 2009, 14:51 pm
Hola, por fa, ayudenme a convertir el siguiente codigo que esta hecho en C, quiero pasarlo a visual basic 6. sirve para convertir un texto a formato PDU, y viceversa.

/* Transforma un texto normal (pchOriginal) en PDU (pchTransformado) devolviendo pchTransformado*/
char *formatoMensaje(char *pchOriginal, char *pchTransformado)
{
    char pchTablaHex[]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
    unsigned char chrCaracter;
    int intContador;
    int intIndice;
    int intTamano;
    int intMascara;
    int intDesplaza;
 
    intTamano = strlen(pchOriginal);
    intMascara = 1;
    intContador = 0;
    intIndice = 2;
    strcpy(pchTransformado,"00");
    intDesplaza = 7;
 
    while(intContador < intTamano)
    { 
        chrCaracter = ((*(pchOriginal + intContador + 1) & intMascara) << intDesplaza) + (*(pchOriginal + intContador) >> (7 - intDesplaza)); 
        pchTransformado[intIndice] = pchTablaHex[(chrCaracter & 0xF0) >> 4]; 
        intIndice++; 
        pchTransformado[intIndice] = pchTablaHex[chrCaracter & 0x0F]; 
        intIndice++; 
        intContador++; 
        intMascara <<= 1; 
        intMascara++ ; 
        intDesplaza--; 
        if(intDesplaza == -1) 
        {   
            intMascara = 1;   
            intDesplaza = 7;   
            intIndice -= 2; 
        }
    }
 
    pchTransformado[intIndice] = '';
 
    chrCaracter=(char)intTamano;
    pchTransformado[0] = pchTablaHex[(chrCaracter & 0xF0) >> 4];
    pchTransformado[1] = pchTablaHex[chrCaracter & 0x0F];
 
    return pchTransformado;
}
 
/* Transforma un texto PDU (pchOriginal) en texto normal (pchTransformado) devolviendo pchTransformado*/
char *decodificaMensaje(char *pchOriginal, char *pchTransformado)
{
    char pchLetras[5];
    unsigned char chrCaracter;
    int intTamano;
    int intContador;
    int intArrastre;
    int intDesplaza;
    int intIndice;
    int intMascara;
 
    intMascara = 128;
    intIndice = intContador = intArrastre = intDesplaza = 0;
 
    strcpy(pchLetras, "0x");
    strncat(pchLetras, pchOriginal + intIndice, 2);
    sscanf(pchLetras, "%x", &intTamano);
 
    intIndice += 2;
 
    while(intContador < intTamano)
    { 
        strcpy(pchLetras, "0x"); 
        strncat(pchLetras, pchOriginal + intIndice, 2); 
        sscanf(pchLetras, "%x", &chrCaracter); 
        pchTransformado[intContador] = ((chrCaracter & ~intMascara) << intDesplaza) + intArrastre; 
        intArrastre=(chrCaracter & intMascara) >> (7 - intDesplaza); 
        intIndice += 2; 
        intMascara >>= 1; 
        intMascara += 128; 
        intDesplaza++; 
        if(intMascara == 255) 
        {   
            intContador++;   
            pchTransformado[intContador] = chrCaracter >> 1;   
            intMascara = 128;   
            intDesplaza = intArrastre = 0; 
        }
        ++intContador;
    }
 
    pchTransformado[intContador] = '';
 
    return pchTransformado;
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines