Compilar codigo en tiempo de ejecucion?

29/03/2007 - 14:38 por Heberto Villavicencio | Informe spam
Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo de
ejecucion, es decir, algo como esto:

COMPILE ("C:\DATOS\IMPRIME.PRG")
DO ("C:\DATOS\IMPRIME.PRG")

Coloco la anologia desde FoxPro que es con lo que trabajo actualmente pero
estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
trabajo.
Gracias por sus comentarios

Preguntas similare

Leer las respuestas

#1 Mario Vázquez
29/03/2007 - 15:05 | Informe spam
Podrás lograr algo parecido usando reflexión (reflection), aunque no de un
modo tan inmediato como usando las macros de Clipper, por ejemplo. Mediante
reflexión puedes instanciar dinámicamente objetos contenidos en un
ensamblado (archivo exe o dll). En realidad no compilas el código (ya está
compilado), sinó que instancias objetos dinámicamente, y puedes hacerlo a
partir de su nombre, como en el ejemplo que propones.
Busca en la web ejemplos de reflexión, aunque si no te has metido aún en el
mundo de .net, probablemente te sonará todo un poco a chino. Pero no
desesperes, lo que buscas puede hacerse.


"Heberto Villavicencio" escribió en el mensaje
news:OAR%
Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo
de ejecucion, es decir, algo como esto:

COMPILE ("C:\DATOS\IMPRIME.PRG")
DO ("C:\DATOS\IMPRIME.PRG")

Coloco la anologia desde FoxPro que es con lo que trabajo actualmente pero
estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
trabajo.
Gracias por sus comentarios


Respuesta Responder a este mensaje
#2 Diego Jancic
29/03/2007 - 15:09 | Informe spam
On 29 mar, 09:38, "Heberto Villavicencio"
wrote:
Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo de
ejecucion, es decir, algo como esto:

COMPILE ("C:\DATOS\IMPRIME.PRG")
DO ("C:\DATOS\IMPRIME.PRG")

Coloco la anologia desde FoxPro que es con lo que trabajo actualmente pero
estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
trabajo.
Gracias por sus comentarios



Hola,
Si se puede, aca tenes un ejemplo simple (no tan simple como en
FoxPro): http://www.codeproject.com/csharp/cscompiler.asp
De todas formas pensa si realmente es lo que mas te conviene, muchas
veces compilar codigo es la solucion mas facil de hacer, pero la que
trae mas problemas. Si queres conta que vas a hacer y te damos una
mano ;-)

Saludos!
Diego
Respuesta Responder a este mensaje
#3 Heberto Villavicencio
29/03/2007 - 16:43 | Informe spam
Lo que pasa es que tengo cantidad de sistemas regados, cada cliente imprime
sus facturas segun su formato y criterio, entonces simplemente el
procedimiento que imprime la factura esta almacenado en un PRG en el
cliente, el sistema lo compila en tiempo de ejecucion y lo ejecuta por tal
forma lo unico que tengo que cambiar de un cliente a otro es el
procedimiento de imprimir la factura y esto puedo hacerlo en el mismo
cliente con el notepad por ejemplo. De esta forma evito modificar el proceso
de facturacion del sistema en cada punto que instale. Es evidente que para
cambiar a C# necesitaria tener un proceso similar a este o se perderia dicha
funcionalidad la cual es imprescindible para la aplicacion, ya que
actualmente hay mas de 300 puntos que trabajan de esa forma.


"Diego Jancic" wrote in message
news:
On 29 mar, 09:38, "Heberto Villavicencio"
wrote:
Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo
de
ejecucion, es decir, algo como esto:

COMPILE ("C:\DATOS\IMPRIME.PRG")
DO ("C:\DATOS\IMPRIME.PRG")

Coloco la anologia desde FoxPro que es con lo que trabajo actualmente
pero
estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
trabajo.
Gracias por sus comentarios



Hola,
Si se puede, aca tenes un ejemplo simple (no tan simple como en
FoxPro): http://www.codeproject.com/csharp/cscompiler.asp
De todas formas pensa si realmente es lo que mas te conviene, muchas
veces compilar codigo es la solucion mas facil de hacer, pero la que
trae mas problemas. Si queres conta que vas a hacer y te damos una
mano ;-)

Saludos!
Diego

Respuesta Responder a este mensaje
#4 Diego Jancic
29/03/2007 - 17:13 | Informe spam
On 29 mar, 11:43, "Heberto Villavicencio"
wrote:
Lo que pasa es que tengo cantidad de sistemas regados, cada cliente imprime
sus facturas segun su formato y criterio, entonces simplemente el
procedimiento que imprime la factura esta almacenado en un PRG en el
cliente, el sistema lo compila en tiempo de ejecucion y lo ejecuta por tal
forma lo unico que tengo que cambiar de un cliente a otro es el
procedimiento de imprimir la factura y esto puedo hacerlo en el mismo
cliente con el notepad por ejemplo. De esta forma evito modificar el proceso
de facturacion del sistema en cada punto que instale. Es evidente que para
cambiar a C# necesitaria tener un proceso similar a este o se perderia dicha
funcionalidad la cual es imprescindible para la aplicacion, ya que
actualmente hay mas de 300 puntos que trabajan de esa forma.

"Diego Jancic" wrote in message

news: On 29 mar, 09:38, "Heberto Villavicencio"
> wrote:
>> Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo
>> de
>> ejecucion, es decir, algo como esto:

>> COMPILE ("C:\DATOS\IMPRIME.PRG")
>> DO ("C:\DATOS\IMPRIME.PRG")

>> Coloco la anologia desde FoxPro que es con lo que trabajo actualmente
>> pero
>> estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
>> trabajo.
>> Gracias por sus comentarios

> Hola,
> Si se puede, aca tenes un ejemplo simple (no tan simple como en
> FoxPro):http://www.codeproject.com/csharp/cscompiler.asp
> De todas formas pensa si realmente es lo que mas te conviene, muchas
> veces compilar codigo es la solucion mas facil de hacer, pero la que
> trae mas problemas. Si queres conta que vas a hacer y te damos una
> mano ;-)

> Saludos!
> Diego



Hola,
Lo que yo personalmente haria es distribuir una dll compilada con ese
pequeño procedimiento, es mucho mas facil y mas rapido. Pero si
realmente lo necesitas para poder modificarlo en el cliente con
notepad, podes hacerlo con el link que te mande. ;)

Saludos!
Respuesta Responder a este mensaje
#5 Jose Camacho Vaca
29/03/2007 - 19:04 | Informe spam
Yo tuve un problema similar y la verdad en C# es una desgracia intentar
resolverlo. En fox es facil, puedes compilar, hacer macrosubtitución,
ditribuir los reportes y que sean modificables para el cliente, etc. En C#
no.
Lo que hicimos fué lo siguiente, creamo un formato de reporte con crystal y
lo alimentamos con los datos de una consulta que parece un archivo plano,
literalmente tiene todos los datos de las tablas que estan relacionadas con
lo que se va a imprimir (sin importar si se imprime o no), hackeamos el
formato del reporteador de crystal e hicimos nuestro propio reporteador donde
el usuario puede formatear su fact. Como podras ver fue un trabajo del
demonio, pero ya esta. Al menos para salir del paso. Estamos considerando a
futuro comprar la ver. mas grande de crystal, que supuestamente con ella se
puede hacer todo esto. Espero haberte ayudado en algo.
Saludos.
José Camacho Vaca
Colima, MX


"Diego Jancic" wrote:

On 29 mar, 11:43, "Heberto Villavicencio"
wrote:
> Lo que pasa es que tengo cantidad de sistemas regados, cada cliente imprime
> sus facturas segun su formato y criterio, entonces simplemente el
> procedimiento que imprime la factura esta almacenado en un PRG en el
> cliente, el sistema lo compila en tiempo de ejecucion y lo ejecuta por tal
> forma lo unico que tengo que cambiar de un cliente a otro es el
> procedimiento de imprimir la factura y esto puedo hacerlo en el mismo
> cliente con el notepad por ejemplo. De esta forma evito modificar el proceso
> de facturacion del sistema en cada punto que instale. Es evidente que para
> cambiar a C# necesitaria tener un proceso similar a este o se perderia dicha
> funcionalidad la cual es imprescindible para la aplicacion, ya que
> actualmente hay mas de 300 puntos que trabajan de esa forma.
>
> "Diego Jancic" wrote in message
>
> news: On 29 mar, 09:38, "Heberto Villavicencio"
> > wrote:
> >> Saludos, se puede implementar en C# compilar y ejecutar codigo en tiempo
> >> de
> >> ejecucion, es decir, algo como esto:
>
> >> COMPILE ("C:\DATOS\IMPRIME.PRG")
> >> DO ("C:\DATOS\IMPRIME.PRG")
>
> >> Coloco la anologia desde FoxPro que es con lo que trabajo actualmente
> >> pero
> >> estoy planteandome migrar a .NET y escogi C# como proximo lenguaje de
> >> trabajo.
> >> Gracias por sus comentarios
>
> > Hola,
> > Si se puede, aca tenes un ejemplo simple (no tan simple como en
> > FoxPro):http://www.codeproject.com/csharp/cscompiler.asp
> > De todas formas pensa si realmente es lo que mas te conviene, muchas
> > veces compilar codigo es la solucion mas facil de hacer, pero la que
> > trae mas problemas. Si queres conta que vas a hacer y te damos una
> > mano ;-)
>
> > Saludos!
> > Diego

Hola,
Lo que yo personalmente haria es distribuir una dll compilada con ese
pequeño procedimiento, es mucho mas facil y mas rapido. Pero si
realmente lo necesitas para poder modificarlo en el cliente con
notepad, podes hacerlo con el link que te mande. ;)

Saludos!


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida