[Reto] Show My Source Code.

Iniciado por BlackZeroX, 19 Febrero 2011, 09:17 AM

0 Miembros y 1 Visitante están viendo este tema.

BlackZeroX

.
Realizar un Codigo fuente que se imprima a si mismo exactamente SIN EXCEPCIÓN ALGUNA, de manera EXACTA (cadenas declaraciones procesos, etc.).

* De 1 a l 10 en conocimientos donde 1 sabe manejar y se sabe las condiciones del lenguaje, como minimo 4.
* El codigo imprimido puede ser porun msgbox impresora, por un Debugger, un archivo de texto ne fin solo que devuelva su propio codigo fuente ( Recomiendo hacerlo en el Sub main() ).
* NO VALE LEER ARCHIVOS EXTERNOS de ninguna indole.

Publicar su codigo el dia 26/02/2011 ( en este día publicare mi código ) , esto es solo para dar tiempo para que piensen como hacerlo, y que no vean otros un codigo fuente y se inspiren en el, USEN SU MATERIA GRIS!¡.

--------------------

* No vale extraer el codigo fuente de otro lado externo a el programa, recurso, etc debera ser un codigo simple.
* Si tu codigo hace mension a una dll externa igual cuenta como codigo del mismo programa, asi que cuidado con los mañosos.
* Como vez dice A SI MISMO, debera ser lo mismo si esta o no esta compilado, es decir que si funciona en el IDE pero no en un exe no vale.
* En otras palabras si haces un Addin vas a tener que mostrar el codigo fuente del Addin no hay otra. si lo compilas te devera mostrar el codigo fuente original, si lo ejecutas debera realizar lo mismo; es decir

Si tu codigo fuente es:

Código:

Código (vb) [Seleccionar]


sub main()
    codigo
end sub



El programa al ejecutarlo debera mostrarte su mismo codigo es decir TODO Sub main() con TODO lo que haya dentro y fuera de el mismo, si metes modulo, clases, comentarios funciones procesos, de igual manera.

La cosa es pensar, en como rayos hacerlo pero de que se puede se puede NO hay que manejar APIS estructuras ni nada similar, es solo y unicamente LÓGICA.


---------------

Debido a los amigos que dieron demasiados detalles ahora el limite de tiempo ya no tiene caso.

La parte comentada es mi codigo resultante.
Código (Vb) [Seleccionar]


Sub main(): Const s As String = "Sub main(): Const s As String = @: msgbox Replace$(s, Chr(64), Chr(34) & s & Chr(34)): End Sub": MsgBox Replace$(s, Chr(64), Chr(34) & s & Chr(34)): End Sub
'Sub main(): Const s As String = "Sub main(): Const s As String = @: msgbox Replace$(s, Chr(64), Chr(34) & s & Chr(34)): End Sub": MsgBox Replace$(s, Chr(64), Chr(34) & s & Chr(34)): End Sub



Temibles Lunas!¡.
The Dark Shadow is my passion.

79137913

HOLA!!!

Osea Black, estas pidiendo un autodescompilador? mucho trabajo para el 20 :S, aparte es fin de semana XD

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

BlackZeroX

.
Es mas facil de lo que te imaginas!¡.

Dulces Lunas!¡.
The Dark Shadow is my passion.

Edu

A ver, no entendi, dices un ejecutable q al ejecutarse muestre todo su codigo? algo asi..?
Código (vb) [Seleccionar]

Option explicit
dim a as integer

public sub hola()
codigo
codigo
end sub

public sub form1_load()
call MostrarSource()
end sub

Sub MostrarSource()
' Mostrar el texto con el souce de todo el codigo completo
end sub

ignorantev1.1

Creo que no se puede colocar el codigo fuente dentro del codigo fuente  :-X... verdad?, si se hace eso se puede crear una paradoja que puede destruir el universo... ejem!...  :silbar:

Queda autoleerse el programa, pero no se podria extraer el codigo fuente puro. No conozco desensambladores que lo hagan. Una pista por favor compadre  :huh:

79137913

HOLA!!!

Ahh, ahora que me lo decis la clase de Mr Frog lee las funciones que estan enumeradas en su lllamada...

Talvez no es tan dificil, pero igual en fin de semana no, a lo sumo el lunes.

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

79137913                          *Shadow Scouts Team*

Karcrack

No se si es que yo soy muy cortito o es que BlackZero se expresa de una forma muy compleja :xD Lo que pides es 'simplemente' una función que muestre todo el código que hay en el proyecto desde el que se la llama?

Es decir, que de forma genérica esta función ha de ser capaz de mostrar el código del proyecto donde esta, no?

Si es así... La función debería de funcionar con el proyecto compilado?

raul338

Lo mas importante es si deberia incluir los comentarios? :xD

Novlucker

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein