He buscado por google creanme y no encuentro nada no se :S
Yo se crearlo en vb6 asique la idea la tengo pero talvez alguien me explica como hacerlo en C# ya q no se como hacerlo, es decir no se usar manejo de archivos binarios u otras cosas.. espero q me ayuden ;) gracias!
system.IO
como abrir archivos y listo
dices usar el stream entonces? binarywrite algo asi no?
Y lo de usar el split y eso siento q sera muy distinto..
Crear Ejecutables y Modificar Variables en C#.NET (http://foro.elhacker.net/net/crear_ejecutables_y_modificar_variables_en_cnet-t286880.0.html)
:rolleyes:
Mmmm creo q te vas muy lejos de lo q yo quiero hacer xD
Hablo de un Builder q funciona con un Stub q se metera dentro del nuevo ejecutable "hijo" comportarse de una forma distinta y poder encontrar los datos q se le habian pasado desde el padre..
En .NET es mas sencillo lo que buscas, se puede crear un pequeño compilador (en si seria un ensamblador), por ejemplo se le puede indicar el nombre de ejecutable, el tamaño de la ventana, botones, etc, se puede cambiar colores, nombres de ventana, boton y demas, en si todo lo que quieras.
Aqui tengo un pequeño ejemplo:
(http://img822.imageshack.us/img822/7515/dibujonzl.jpg)
Descarga:
http://www.4shared.com/file/McnjGdJW/CompHecho.html
Este programa recibe los parametros para crear un nuevo programa personalizado, se le puede indicar el texto que mostrara en el boton y ventana, ademas se le puede indicar el alto y ancho del boton y su posicion en el formulario.
En si se puede hacer que personalize todo del nuevo programa, formularios, colores, ventanas, estilos y demás.
Obviamente es una pequeña demo que acabo de hacer solo para mostrarlo, el .exe resultante muestra una ventana de consola pero se puede eliminar sin problemas.
Para hacer este tipo de proyectos necesitas saber programar en IL (Intermediate Language) que es similar al Assembler y utilizar ilasm.exe.
Saluos.
PD: El programa todavia no hace validaciones de los txt, asi que se deben llenar correctamente para evitar fallos.
Gracias pero me parece raro q en vb6 sea taan facil y en .net se complique taanto, por eso pienso q tiene q haber otra forma, talvez intentare traducir el codigo de vb6 a C# a ver si puedo hacerlo, pero la idea era saber antes si habia otra forma mas facil todavia pero veo q hay otras formas mas dificiles xD
Gracias igual a los 3!
Me dio curiosidad, porque dices que en VB6 es "taan facil", es porque solo tienes que copiar y pegar códigos para que funcione? o tu creaste alguna técnica propia para lo que buscas.
En todo caso el método que utiliza la mayoria en vb6 se puede codear en .NET solo modificando un poco el enlace que te dio @raul338.
En realidad es tan simple que no vale la pena ni mencionarlo :P.
Saluos.
Mira esto:
Private Sub Command1_Click()
Dim stub As String
With CD
.DialogTitle = "Elija donde guardar.."
.Filter = "Archivos ejecutables (*.exe)|*.exe"
.ShowSave
End With
If CD.FileName <> vbNullString Then
Open App.Path & "\Stub.exe" For Binary As #1
stub = Space$(LOF(1))
Get #1, , stub
Close #1
Open CD.FileName For Binary As #2
Put #2, , stub
Put #2, , "·$%&/" & Text1.Text
Close #2
End If
End Sub
Eso seria el Builder.exe, pero el Stub.exe q va siempre en el mismo directorio del Builder.exe es este:
Sub Main()
Dim my As String
Dim data() As String
Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
my = Space$(LOF(1))
Get #1, , my
Close #1
data() = Split(my, "·$%&/")
' ahora data(1) contiene el string q se le paso del builder ( el text1.text)
MsgBox data(1)
End Sub
Esto ya lo conoceras, pero esq quiero algo asi, intentare como decia a traducirlo.
Esta codeado asi nomas esq lo hice rapido pero anda y entenderas creo, y cuando aprendi a hacerlo me dijieron q eso era un Builder asique no se xD
El "stub" solo es un .exe que se lee asi mismo y saca el string guardado al final de si mismo (el que "builder" guardo) separado por "·$%&/" (para eso el Split), esto lo haces mas sencillo, simplemente guardas un .exe como archivo de recurso y luego de escribirlo al HD le aumentas al final el string que quieres y el procedimiento es el mismo. Asi no tendrias que tener un "stub" al lado del "builder".
Como dije solo necesitas modificar un poco el enlace que te dieron :silbar:
Pero este método que muestras es muy "barato", supongo que para vb6 estará bien, pero en .NET con todas las herramientas que trae se puede hacer algo mucho mas sofisticado como lo que mostre antes.
Saluos.
Que es HD?
Bueno otra solucion q se hace en vb6 tamb, para los crypters es meterlo como recurso al stub mismo, asi como dices.
Pero ok ustedes son los q me enseñan aca en el foro, si dices q es poco profesional esa forma pues entonces a aprenderme el codigo de Raul ;)
Gracias seba xD