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


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  pasar de c a vb 6.0
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: pasar de c a vb 6.0  (Leído 6,267 veces)
n4zGuL

Desconectado Desconectado

Mensajes: 1


Ver Perfil
pasar de c a vb 6.0
« en: 10 Marzo 2009, 20:03 pm »

alber si alguien me puede ayudar a pasar este codigo de lenguaje C a VB 6.0:

public static string EncriptPassRunReg(string pass)
        {
            string buf ="";
            Random rnd = new Random();
            string[] rell = { "KK", "cB", "0x", "z2", "A6" };
            for (int i = pass.Length; i > 0;i--)
            {
                buf += rell[rnd.Next(5)] + Convert.ToChar(Convert.ToInt16( pass[pass.Length - i]) + i);
            }
            return buf;


En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: pasar de c a vb 6.0
« Respuesta #1 en: 10 Marzo 2009, 23:12 pm »

Si no me equivoco seria así:
Código
  1. Public Function EncriptPassRunReg(ByVal pass As String) As String
  2.    Dim i       As Long
  3.    Dim buf     As String
  4.    Dim rell()  As Variant
  5.  
  6.    rell = Array("KK", "cB", "0x", "z2", "A6")
  7.  
  8.    For i = 1 To Len(pass)
  9.        Call Randomize(Timer)
  10.        buf = buf & rell(CInt(Rnd * 4)) & Chr$(Asc(Mid$(pass, i, 1)) + 1)
  11.    Next i
  12.  
  13.    EncriptPassRunReg = buf
  14. End Function

MOD: Retoque un fallo, por cierto, en caso de que el valor Ascii de uno de los caracteres fuera 255 daria error...

Saludos ;D

PD:Feliz primer post :xD ;)


« Última modificación: 10 Marzo 2009, 23:18 pm por Karcrack » En línea

cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: pasar de c a vb 6.0
« Respuesta #2 en: 11 Marzo 2009, 14:11 pm »

hola karcrack, si me premites la sugerencia, la condición del bucle sería algo así a mi parecer:
Código
  1. For i = Len(pass) To 1 Step -1

Código:
Dim rell()  As String

saludos ;)
En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: pasar de c a vb 6.0
« Respuesta #3 en: 11 Marzo 2009, 15:24 pm »

hola karcrack, si me premites la sugerencia, la condición del bucle sería algo así a mi parecer:
Código
  1. For i = Len(pass) To 1 Step -1

Código:
Dim rell()  As String

saludos ;)
No se permite rell() as string, ya que la funcion Array() devuelve variant...

En cuanto al bucle es cierto, traduci mal el bucle de C :xD

Saludos ;)
En línea

cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: pasar de c a vb 6.0
« Respuesta #4 en: 11 Marzo 2009, 16:28 pm »

No se permite rell() as string, ya que la funcion Array() devuelve variant...

los arrays deben ser del mismo tipo, no todo es perfecto, jodido vb
devuelve variants incluso si el contenido del array son cadenas  :-\
En línea

Karcrack


Desconectado Desconectado

Mensajes: 2.416


Se siente observado ¬¬'


Ver Perfil
Re: pasar de c a vb 6.0
« Respuesta #5 en: 11 Marzo 2009, 19:35 pm »

No se permite rell() as string, ya que la funcion Array() devuelve variant...

los arrays deben ser del mismo tipo, no todo es perfecto, jodido vb
devuelve variants incluso si el contenido del array son cadenas  :-\
Tampoco hay problema al trabajar con Variants ;D

Supongo que esta hecho por ejemplo para poder crear Arrays con umeros letras y objetos a la vez.. o yo que se! :xD
En línea

cobein


Desconectado Desconectado

Mensajes: 759



Ver Perfil WWW
Re: pasar de c a vb 6.0
« Respuesta #6 en: 12 Marzo 2009, 13:53 pm »

Como dice Karcrack, al parecer es para que sea mas "versatil", te permite trabajar con numeros, letras o lo que sea. Pero no es mucho problema.
Si te fijas vas a ver que hasta las funciones para trabajar con texto hacen lo mismo, por ejemplo Mid, Left y Right devuelven variant y Mid$, Left$ y Right$ devuelven strings.
En línea

http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.
wofdy

Desconectado Desconectado

Mensajes: 1


Ver Perfil
pasar de c a vb 6.0
« Respuesta #7 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;
En línea

YST


Desconectado Desconectado

Mensajes: 965


I'm you


Ver Perfil WWW
Re: pasar de c a vb 6.0
« Respuesta #8 en: 27 Abril 2009, 15:29 pm »

Usa las etiquetas code , ¿en que te quedas atascado para ayudarte ?
En línea



Yo le enseñe a Kayser a usar objetos en ASM
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: pasar de c a vb 6.0
« Respuesta #9 en: 27 Abril 2009, 17:58 pm »

me parece que en todo :-X
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines