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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  [C#] Compilador de arhivos batch a exe
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [C#] Compilador de arhivos batch a exe  (Leído 3,566 veces)
neoncyber

Desconectado Desconectado

Mensajes: 90



Ver Perfil WWW
[C#] Compilador de arhivos batch a exe
« en: 28 Abril 2011, 15:15 pm »

Hola a todos este es mi primer aporte a elhacker.net, no me habia dado cuenta del nivel de esta comunidad, bueno, lo que hice es una dll la cual se puede reutilizar la q permite compilar batchs a exe, solo es una aplicacion de consola, pero puede ser extendida facilmente a winforms o lo q se les ocurra espero que les guste. El articulo completo esta en mi blog.

http://donkeysharp.blogspot.com/2011/04/creando-un-compilador-de-batchs.html

Codigo fuente:
http://cid-a9fbcf65213bf348.office.live.com/self.aspx/.Public/%5BSOURCE%5D%20-%20BatCompiler.zip

Para hacer esto me base en otra entrada en la que utilizo los servicios de compilacion de .NET y con un poco de creatividad me salio el de batchs.

Para compilar codigo C# simplemente se sigue mas o menos la logica de este metodo:
Código
  1. public static StringBuilder CompileFromSourceCode(string outputName, string sourceCode, bool generateExecutable) {
  2.         StringBuilder errores = null;
  3.  
  4.         /* Creamos un proveedor de codigo con el cual
  5.           * podemos realizar distintas operaciones sobre
  6.           * algun codigo C-Sharp, una de estas tareas es
  7.           * la de compilar ensamblados.
  8.           */
  9.         CSharpCodeProvider provider = new CSharpCodeProvider();
  10.  
  11.         /* Para este ejemplo se usa el metodo para compilar
  12.           * desde algun código.
  13.           * # provider.CompileAssemblyFromSource(...)
  14.           */
  15.  
  16.         // Para eso necesitamos algunos parametros de compilacion
  17.         CompilerParameters parameters = new CompilerParameters();
  18.  
  19.         // Decimos que el ensamblado sera ejecutable
  20.         // caso contrario seria una DLL
  21.         parameters.GenerateExecutable = generateExecutable;
  22.  
  23.         /* Ahora necesitamos adicionar un ensamblado
  24.           * como es un ejemplo basico solo utilizaremos
  25.           * el assembly System.dll
  26.           */
  27.         parameters.ReferencedAssemblies.Add("System.dll");        
  28.  
  29.         // Establecemos el nombre del ensamblado de salida
  30.         parameters.OutputAssembly = outputName;
  31.  
  32.         // Compilamos el codigo fuente
  33.         CompilerResults results = provider.CompileAssemblyFromSource(parameters, sourceCode);
  34.  
  35.         // En el caso de que existan errores los mostramos
  36.         // caso contrario el ensamblado ha sido construido
  37.         if (results.Errors.Count > 0) {
  38.            errores = new StringBuilder();
  39.            foreach (CompilerError error in results.Errors) {
  40.               errores.AppendLine(string.Format("Error en linea: {0}", error.Line));
  41.               errores.AppendLine("\t" + error.ErrorText);
  42.            }
  43.         }
  44.  
  45.         return errores;
  46.      }
  47.  

Espero les sea util

Saludos


En línea

Código
  1. #!/usr/bin/python
  2. print "Visit:"
  3. print "http:\\donkeysharp.blogspot.com"
  4.  
[D4N93R]
Wiki

Desconectado Desconectado

Mensajes: 1.646


My software never has bugs. Its just features!


Ver Perfil WWW
Re: [C#] Compilador de arhivos batch a exe
« Respuesta #1 en: 29 Abril 2011, 21:03 pm »

Excelente, agregado al recopilatorio!


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[TUTE]Como Crear un Compilador de Batch en Visual Basic
Programación Visual Basic
DarkStreaM 5 8,888 Último mensaje 13 Mayo 2009, 21:48 pm
por ratnn2525
Ayuda pipes y compilador de batch !!
Programación Visual Basic
DarkStreaM 3 1,909 Último mensaje 15 Marzo 2009, 06:25 am
por BlackZeroX
Compilador Batch (Transforma .bat en .exe)
Scripting
Avoidance25 0 3,653 Último mensaje 3 Julio 2009, 01:46 am
por Avoidance25
Problema con "Compilador" Batch
Programación C/C++
kworld 0 1,627 Último mensaje 24 Mayo 2010, 23:31 pm
por kworld
COMPILADOR BATCH
Scripting
xBart 5 5,317 Último mensaje 10 Abril 2011, 02:13 am
por xBart
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines