Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - karmany

#731
cobein MUCHÍSIMAS GRACIAS...
Me has ahorrado muchísimo trabajo inútil. Te lo agradezco enormemente.

Un saludo
#732
VB6
Tengo una base de datos con una sóla tabla: "Tabla1" y con un sólo campo: "Campo1" lo hago lo más sencillo para entender mi problema... (Control de datos Data)

1º) Quiero buscar todos los registros vacios de "Campo1" y perfectamente sale de este modo:
Código (vb) [Seleccionar]
Data1.RecordSource = "SELECT * FROM Tabla1 WHERE Campo1 = NULL"

2º)Ahora pongo el criterio de que quiero que aparezcan todos los registros que comienzen por "A". También sale perfectamente de este modo:
Código (vb) [Seleccionar]
Data1.RecordSource = "SELECT * FROM Tabla1 WHERE Campo1 LIKE '" & criterio & "'"

3º) Ahora viene mi DUDA... Quiero que cuando el criterio sea = "" me aparezcan todos los registros, es decir, TODOS incluídos los registros nulos. Sin embargo cuando el criterio sea <> "" pues que no aparezcan los registros nulos.
Una solución sencilla pero que no quiero hacer es la siguiente:
Código (vb) [Seleccionar]
if criterio = "" then
    "SELECT * FROM Tabla1 WHERE (Campo1 LIKE '" & criterio & "') OR (Campo1 = NULL)"
Else
    "SELECT * FROM Tabla1 WHERE Campo1 LIKE '" & criterio & "'"
End If


Sin embargo, no lo quiero hacer así porque mi consulta es realmente bastante más amplia y tendría que poner muchísimas condiciones...

Mi pregunta es... ¿Se podría poner la condición criterio="" dentro de la consulta SQL?
Pongo un ejemplo, se podría intentar hacer algo así: porque no lo consigo y sería para mi perfecto:
Código (vb) [Seleccionar]
"SELECT * FROM Tabla1 WHERE (Campo1 LIKE '" & criterio & "') OR ((Campo1 = NULL) AND ('criterio' = ""))"

A alguien se le ocurre la forma de hacerlo???? existe alguna forma de ver TODOS los registros, incluídos los nulos de otra forma diferente...
Cualquier sugerencia que se os ocurra por favor comentármela..

Un saludo y gracias.
karmany

#733
Ingeniería Inversa / Re: Ayuda por favor
25 Septiembre 2009, 21:28 PM
Hay miles de formas de exponer tu pregunta de forma menos explícita...
Inténtalo:

http://foro.elhacker.net/ingenieria_inversa/se_borraran_los_post_alusivos_a_programas_comerciales-t234155.0.html
#734
Para analizar un programa NET tienes multitud de herramientas:
ILDasm, DotNET tracer, Calimero, Reflector, plugin Reflexil, Illy (plugin de OllyDBG)...

Para editar el ejecutable en NET puedes hacerlo a mano(yo lo hago así con ILDasm para ver los bytes y el código IL), en la ayuda de este programa explico cómo encontrar el byte adecuado:
http://tuts4you.com/download.php?view.2790

También puedes hacerlo usando el plugin Reflexil:
Modificar un NET con Reflexil

StrongNames y Reflexil

Hay muchos tutoriales sobre NET:
NET por Apuromafo

SA_Patching NET

Crackme 1.7
#735
Hazlo desde código así:

Código (vb) [Seleccionar]
Text1.Text = "Spotify " & Chr$(&H6) & " Spotify - iPhone"

PD. si el código no corresponde a 0x6 prueba otros valores. A mí me funciona correctamente como te he puesto:
http://www.gtwiki.org/mwiki/index.php?title=VB_Chr_Values
#736
18 de septiembre de 2009 - Nueva versión del editor de recursos Resource Builder

Nueva versión (    3.0.3.25) del editor de recursos Resource Builder. Su página web es la siguiente:
http://www.resource-builder.com/

Siempre intentamos hablar de herramientas gratuitas que hacen un trabajo similar, pero está bien que se puedan conocer otras alternativas aunque sean de pago... programa gratuito similar == Resource XN

Resource Builder es un interesante editor de recursos cuya principal característica que podemos destacar con otros editores es que tiene un completo soporte para UNICODE. Y pocos programas dan este soporte...
Y alguno puede pensar... ¿Y ésto para qué puede valernos? Pues imagina que quieres traducir un programa a chino... si lo haces con un editor de recursos cualquiera solamente se verán ???? (interrogantes)...

Resource Builder es una buena alternativa aunque de pago...
karmany
#737
Ingeniería Inversa / Ejemplo 09
18 Septiembre 2009, 23:39 PM
Ejemplo 09

Sustituir recursos

Muchos programas tienen los recursos en otra sección donde los editores de recursos no pueden acceder (estos suelen estar normalmente en la sección .rsrc), por ejemplo como expliqué al sustituir una imagen en un programa hecho en Visual Basic (ejemplo 6). Realmente es un trabajo costoso, no por no saber hacerlo, sino porque hay que ser muy preciso: no podemos añadir ni un sólo byte de más y no podemos equivocarnos...

Como hemos visto, para programas compilados por ej. en Visual Basic podemos valernos de determinadas herramientas, pero si tenemos un programa hecho en un lenguaje indeterminado y queremos por ejemplo modificar una imagen o la música...¿cómo lo podemos hacer?

Yo hace tiempo lo hacía todo a mano, pero conocí una gran herramienta que nos va a facilitar enormemente el trabajo. Se trata del programa:
MultiExtractor. Su página web es la siguiente:
http://www.multiextractor.com/

¿Qué podemos hacer con este programa?
MultiExtractor es capaz de "extraer" de determinados archivos los siguientes recursos:
JPG, BMP, GIF, PNG, PCX, TGA, ICO, CUR, TIFF, EMF, WMF, XM, MOD, WAV, OGG, MP3, MID, S3M, AVI, MPG, DAT, ASF, MOV, SWF, BIK, SMK y nos permite asimismo poder sustituirlos. De este modo ya no hay que preocuparse de si el editor de recursos no puede modificar determinado recurso y nos permite sustituir cualquiera con un par de clicks de ratón.
Un programa muy útil y recomendable. El principal inconveniente es que es de pago.

Antes de poner un simple ejemplo, debemos saber que no podemos sobrepasar el tamaño del recurso a modificar. Esto es lógico y MultiExtractor nos avisará.

Voy a hacer un simple ejemplo con un programa cualquiera... para ello me he fabricado un ejecutable con VB6 al que le he añadido solamente en la interfaz una imagen en formato jpg. El que quiera que lo descargue para practicar:

Descargar el programa ejemplo9.exe que está en el archivo .zip. El enlace está en el primer mensaje de este hilo.

Este es el programa (ejemplo9.exe):

Imagen46

Como he comentado antes, si lo abris desde un editor de recursos será imposible modificar la imagen... ya he dicho muchas veces el porqué de esto.
Para sustituir la imagen por otra habría que hacerlo a mano como expliqué en el ejemplo 6, pero es un trabajo muy preciso... así que vamos a hacerlo rápidamente con Multiextractor.
Lo primero es trabajar con una copia de seguridad, ya que se modificará el archivo original.
Abro ejemplo9.exe con Multiextractor y encuentra de forma eficaz nuestra imagen jpg:


Imagen47

Ahora simplemente pulsamos en la imagen jpg con el botón derecho del ratón y seleccionamos: "Import from..."
Seguidamente seleccionamos la imagen que queramos y ya está... si ejecutamos otra vez ejemplo9.exe veremos la imagen nueva que nosotros hayamos puesto:


Imagen48

He querido hacer este ejemplo de forma general, sin pensar en el compilador. Por supuesto, para un programa compilado con Visual Basic 6 podemos hacer uso de VReformer para sustituir una imagen... pero la idea es tener una visión generalizada para otros compiladores...

#738
Todavía no es posible. Si te fijas en su página en la descarga de la versión 2.00 beta2 verás que pone literalmente:
-"2. No, plugins are not yet implemented"

Un saludo
#739
Ingeniería Inversa / Re: Reto
11 Septiembre 2009, 01:07 AM
Página del autor:
"Este SOFTWARE es una obra intelectual protegida en nuestro país, y en el resto del mundo por la Convención de Berna y la Convención Universal sobre los Derechos de Autor  y otros tratados internacionales de propiedad intelectual."

Tema cerrado.
#740
ASM / Re: sintaxis intel y AT&T
8 Septiembre 2009, 18:23 PM
La sintaxis intel o la AT&T dependen normalmente del compilador que uses y de las opciones que ellos tengan.

Algunos depuradores te permiten elegir una u otra.

La sintaxis intel es utilizada por ejemplo por Microsoft y normalmente es relacionada con Windows. La sintaxis AT&T es relacionada con Linux. Cada persona tiene su opinión al respecto, pero para mí tienen bastantes diferencias...de AT&T conozco bastante poco.

Mira acabo de echar un vistazo a un libro que tengo de programación en asm y estoy viendo que con gcc es posible usar la sintaxis intel. No tengo ni idea de cómo se debe configurar pero la sintaxis que estoy leyendo está en intel.

Respecto al ensamblador de 32 y de 64 bits pues tienen sus diferencias, sólo piensa que los registros tienen un tamaño doble. Piensa también que si programas en 32 bits, tu programa servirá también para ordenadores a 64 pero no al contrario.