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

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


  Mostrar Temas
Páginas: 1 2 [3] 4 5
21  Programación / Programación C/C++ / [RESUELTO] Macro o ??? en: 7 Marzo 2014, 19:44 pm
Hola gente, estoy tratando de lograr algo pero no puedo pensarlo en la manera que lo quiero, les explico un poco.
 
Tengo una variable WORD/DWORD.
 
Esa variable puede tomar muchos números, como:
#define defvar1 1
#define defvar2 2
#define defvar3 3
 
entonces, yo podría hacer un switch o un if para comparar si esa variable es defvar1,2 o 3 (tengo más defines, como 35), entonces me gustaría hacer con un macro supongo, para checkear éso, sin importar cuantos defines yo tenga.
 
Me gustaría ver como podrían resolverlo 1) usando macro o algo para evadir un switch grande o un if grande; 2)o la manera en que lo pensarían.
 
Gracias (Y)
22  Programación / .NET (C#, VB.NET, ASP) / [AYUDA] C# punteros en: 26 Febrero 2014, 15:23 pm
Hola a todos, estaba tratando de pasar un código de c++ a c#, busqué en internet la posible solución, aún así no pude resolverlo, es el siguiente:

Edit:
Por cierto, estoy utilizando ésto:
Código
  1.    using DWORD = UInt32;
  2.    using HRESULT = Int32;
  3.    using WORD = UInt16;
  4.    using ULONG = UInt32;
  5.    using HSERVICE = UInt16;
  6.    using LPVOID = IntPtr;
  7.    using LPBYTE = IntPtr;
  8.    using REQUESTID = UInt32;
  9.    using USHORT = UInt16;
  10.    using BOOL = UInt32;
  11.    using LPSTR = IntPtr;
  12.    using BYTE = Byte;
  13.    using CHAR = Byte;
  14.    using DOUBLE = Double;
  15.    using FLOAT = Single;
  16.    using LONG = UInt32;
  17.    using LONGLONG = UInt64;
  18.    using SHORT = Int16;
  19.    using UINT = UInt32;
  20.    using ULONGLONG = UInt64;
  21.  

Código
  1. [StructLayout(LayoutKind.Explicit, Size = 268, CharSet = CharSet.Ansi)]
  2.    public unsafe struct WFSIPMIMAGEREQUEST2
  3.    {
  4.        [FieldOffset(0)]public WORD wImageSource;
  5.        [FieldOffset(2)]public WORD wImageType;
  6.        [FieldOffset(4)]public WORD wImageColorFormat;
  7.        [FieldOffset(6)]public WORD wImageScanColor;
  8.        [FieldOffset(8)]public LPVOID lpszImagePath;
  9.        [FieldOffset(12)]public fixed char Value[256];
  10.    }
  11.  
  12. [StructLayout(LayoutKind.Explicit, Size = 276, CharSet = CharSet.Ansi)]
  13.    public unsafe struct WFSIPMREADIMAGEIN2
  14.    {
  15.        [FieldOffset(0)]public USHORT usMediaID;
  16.        [FieldOffset(2)]public WORD wCodelineFormat;
  17.        [FieldOffset(4)]public WFSIPMIMAGEREQUEST2** lppImage;
  18.    }
  19.  

A WFSIPMREADIMAGEIN2 le puse 276 porque está en offset 4 + 268 de la otra estructura = 272 + 4 de otro index pero a null como terminador de los índices.

Por el cual el index 0 tendría toda la estructura y el index 1 sería igual a null.

Código
  1. WFSIPMREADIMAGEIN2 lpReadImageIn = new WFSIPMREADIMAGEIN2();
  2.  

pero cuando hago:

Código
  1. lpReadImageIn.lppImage[0]->wImageSource = 1;
  2.  

Me muestra como mensaje de error: "Object reference not set to an instance of an object."

Cualquier aporte sería de gran ayuda, gracias.
23  Programación / Programación C/C++ / [RESUELTO] FUNCIONES GLOBALES CLASS en: 20 Diciembre 2013, 15:39 pm
Hola a todos, me estaba preguntando cómo podría hacer yo una clase que tenga funciones globales, y que a su vez permita templates ej:

MiClase::Mensaje("hola"); //función común

//Template
a y b = int
MiClase::Suma(a, b);

a y b = float
MiClase::Suma(a, b);

No sé si es mejor una clase o un namespace, para mi es todo de lo mismo *-)

Desde yá muchas gracias.
24  Programación / Programación Visual Basic / [RETO] Determinar Número Perfecto en: 23 Octubre 2013, 11:44 am
Hola a todos, los invito a que programen a gusto si un número es perfecto o no.

Cómo funciona un número perfecto?

Un número es perfecto, cuando la SUMA de TODOS sus divisores, evadiendo a si mismo, es igual a ese número.

Ej:

6: 1+2+3 = 6
28: 1+2+4+7+14 = 28
etc

Lista:
6
28
496
8128
33550336
8589869056
137438691328
2305843008139952128

Valoro pensamientos/deducciones propias :D
25  Programación / Desarrollo Web / [AYUDA] javascript Variable = PHP echo en: 1 Septiembre 2013, 22:11 pm
Hola, mi problema es el siguiente, tengo un archivo HTML, que dentro tengo programación en javascript, y estoy queriendo hacer ésto:

Código
  1. <Script>
  2. var VARIABLE = Llamada a php PEPE.PHP;
  3.  
  4. alert(VARIABLE);
  5. </Script>
  6.  

PEPE.PHP
->
Código
  1. echo "1000";
  2.  

La llamada a php la hice con JQuery y Ajax, pero no funcionó, alguno tiene alguna idea?
26  Programación / Desarrollo Web / [RESUELTO] Problema con CSS en: 27 Agosto 2013, 18:57 pm
Hola, estaba buscando algo que no puedo encontrar en internet, tal vez las personas no se lo preguntaron...


Acá está el problema:

Yo tengo ésto:

Código
  1. <ul class="nav">
  2.    <li>
  3.        <a href="#">StyleShit</a>
  4.        <ul>
  5.            ...
  6.        </ul>
  7.    </li>
  8. </ul>
  9.  

Lo que quiero hacer en CSS es ésto:

Código
  1. .nav a:after ul
  2. {
  3.    content: "\25bc"; /* http://textmechanic....-Converter.html */
  4.    font-size: 9px;
  5.    position:absolute;
  6. }
  7.  

Pero ésto no funciona, no sé por qué

Lo que quiero lograr es: que si hay luego de A un UL, que agregue "\25bc" al final de A.

El resultado sería como ésto:

Código
  1. <ul class="nav">
  2.    <li>
  3.        <a href="#">StyleShit</a>\25bc
  4.        O ASÍ
  5.        <a href="#">StyleShit \25bc</a>
  6.        <ul>
  7.            ...
  8.        </ul>
  9.    </li>
  10. </ul>
  11.  

Gracias, cualquier ayuda sería buena.
27  Programación / Programación Visual Basic / [SOLUCIONADO] Split en: 19 Julio 2013, 09:28 am
Hola, estaba tratando de hacer algo mientras me topé con un problema, tal vez parezca tonto o quizá nunca necesité algo así.

Lo que quiero lograr, es encontrar la posición con respecto a un index de un Split.

Code:

Form:
Código
  1. Option Explicit
  2.  
  3. Private Sub Form_Load()
  4. Call ConfigArray
  5.  
  6. Call Stuff
  7.  
  8. End
  9. End Sub
  10.  
  11.  

Module:
Código
  1. Option Explicit
  2.  
  3. Public MyByteArray() As Byte
  4. Public Const StrByteArray As String = "255,254,253,0,252,0,0,0,251,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,250,0,0,0,0,0,0," & _
  5.                                      "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,249,0," & _
  6.                                      "0,0,3,4,248,3,0,247,246,5,6,2,245,244,5,6,243,242,7,241,8,240,9,10,239,9,11,12,8,238,11," & _
  7.                                      "13,13,10,237,8,236,14,8,9,235,13,8,7,13,8,7,234,233,8,12,10,232,14,231,15,15,230,229,0,0,0," & _
  8.                                      "0,0,0,0,228,227,226,16,5,2,17,18,5,2,17,18,5,2,17,18,225,224,4,18,223,2,17,18,222,19,18," & _
  9.                                      "18,20,2,17,18,21,22,221,18,220,2,17,18,21,22,219,18,23,2,17,18,5,2,218,18,16,2,17,18,21,22," & _
  10.                                      "217,18,19,2,17,18,21,22,216,218,23,2,17,18,21,22,215,18,20,2,17"
  11. Public MaxArray As Integer
  12.  
  13. Public Sub ConfigArray()
  14. Dim i As Integer
  15.  
  16. MaxArray = UBound(Split(StrByteArray, ","))
  17. ReDim MyByteArray(0 To MaxArray) As Byte
  18.  
  19. For i = 0 To MaxArray
  20.    MyByteArray(i) = Split(StrByteArray, ",")(i)
  21. Next i
  22. End Sub
  23.  
  24. Public Sub Stuff()
  25. Dim i As Integer
  26. Dim CurrentByte As Byte
  27. Dim found As Long
  28. Dim CurrentPos As Long
  29.  
  30. For i = 0 To MaxArray
  31.    If i = 5 Then
  32.        'Ejemplo, index 5 -> 255,254,253,0,252,0,
  33.        CurrentByte = MyByteArray(i)
  34.        CurrentPos = Aca quiero obtener la posicion del index 5
  35.    End If
  36. Next i
  37. End Sub
  38.  

CurrentPos = Aca quiero obtener la posicion del index 5, que sería 19

Alguna idea o algún comando mágico que me retorne la posición según el index?
28  Programación / Programación Visual Basic / [RESUELTO] CopyMem Array VarTypes en: 9 Mayo 2013, 21:45 pm
Estaba tratando de mover memoria entre arrays.

Hice este ejemplo, tal vez puedan mejorarlo y/o ayudame con Variant :P

Código
  1. Modulo:
  2. Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
  3.        (pDst As Any, pSrc As Any, ByVal ByteLen As Long)
  4.  
  5. Form:
  6. Private Sub Form_Load()
  7. Dim ESI(3 To 6) As Variant
  8. Dim EDI(3 To 6) As Variant
  9.  
  10. ESI(3) = "asdasdasdasdsd12312331231asdasd" '255 '32767 '2147483647
  11. ESI(4) = ESI(3)
  12. ESI(5) = ESI(3)
  13. ESI(6) = ESI(3)
  14.  
  15. EDI(3) = 0
  16. EDI(4) = EDI(3)
  17. EDI(5) = EDI(3)
  18. EDI(6) = EDI(3)
  19.  
  20. CopyMemory EDI(LBound(EDI)), ESI(LBound(ESI)), GetSizeArray(ESI)
  21.  
  22. Dim i As Byte
  23.  
  24. For i = LBound(ESI) To UBound(ESI)
  25.    MsgBox i & ": " & (ESI(i) = EDI(i)) & vbCrLf & "&H" & Hex(VarPtr(ESI(i)))
  26. Next i
  27.  
  28. End
  29. End Sub
  30.  
  31. Private Function GetSizeArray(ByRef vArray)
  32. Dim BaseBytes As Byte
  33.  
  34. 'MsgBox TypeName(vArray)
  35.  
  36. Select Case TypeName(vArray)
  37.    Case "Byte()"
  38.        BaseBytes = 1
  39.    Case "Boolean()", "Integer()"
  40.        BaseBytes = 2
  41.    Case "Long()", "Single()"
  42.        BaseBytes = 4
  43.    Case "Double()", "Currency()", "Date()"
  44.        BaseBytes = 8
  45.    Case "Variant()"
  46.        BaseBytes = 0 'DUNNO
  47.    Case "String()"
  48.        BaseBytes = 4 'ReadMem del VarPtr está el Address al string con su len 4 bytes antes
  49. End Select
  50.  
  51. GetSizeArray = BaseBytes * (UBound(vArray) - LBound(vArray) + 1)
  52. End Function
  53.  

Edit:
Se podría tomar como un reto *-)
29  Programación / Programación C/C++ / [Resuelto] C++ + ASM en: 19 Abril 2012, 05:24 am
Hola, en C++ abrí una etiqueta asm como __asm{}, en la cual dentro quise hacer lo siguiente:

__asm
{
     .... //CÓDIGO

    mov dword ptr [ebx], RetFakeSinPrologo
    .... //MÁS CÓDIGO

RetFakeSinPrologo:
   jmp eax

   .... //MÁS CÓDIGO
}

En la línea del mov dword obtengo el error: "error C2415: improper operand type", en ASM puedo hacerlo así, acá hay alguna forma de lograr éso?

Desde ya muchas gracias.
30  Programación / Programación Visual Basic / [AYUDA] Puntero de controles en: 24 Marzo 2012, 08:42 am
Hola, yo desde un programa que genero desde 0, he obtenido el puntero de un control, como por ejemplo:

Código
  1. Me.Caption = VarPtr(Text1) & " - Hex: " & Hex(VarPtr(Text1)
  2.  

Pero, lo que quiero hacer es obtener ese mismo puntero desde otro programa, alguien tiene alguna idea de como lo puedo obtener? (También para otros controles).
Desde ya muchas gracias.
Páginas: 1 2 [3] 4 5
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines