La respuesta es no, y un no rotundo. Te explico:
Primero, veo que hay algo que no entendiste del todo, asi que aclaremos:
- Compilador = programa que a partir de las instrucciones que escribiste, genera el exe o la dll. Eso esta en el Visual Studio, y no tiene que tenerlo la maquina que usa el programa...
- Runtime: lo que tiene que tener la maquina que va a usar el programa...
No son lo mismo, ni se parecen...
Todos los lenguajes de .net lo que hacen es implementar un conjunto de especificaciones que les permiten despues ser compilados a MSIL, que es un lenguaje intermedio.
Tu programa, entonces, cuando lo compilas desde Visual Studio (poniendo la opcion Release, no Debug, para que genere el exe o dll definitivo) queda como un archivo con un programa escrito en MSIL.
Despues entonces, cuando ejecutas el programa en cualquier maquina, el runtime de .net lo que hace es interpretar el lenguaje MSIL, y traducirlo a lenguaje maquina para que se pueda ejecutar.
Por eso es imposible que tu programa compilado se pueda ejecutar en una maquina que no tenga los runtimes de .net instalados.
No es gran cosa, el instalador de los runtimes de .net no es tan grande, pero bueno, hay que hacerlo...
Antes mencione algo de la opcion "Release". Fijate que cuando compilas el programa desde Visual Studio, arriba tenes una opcion que dice "Debug", y que la podes cambiar por "Release". Te explico la diferencia entre las dos:
- Debug: se usa para cuando estas programando, y necesitas probar tu programa. Compila lo necesario, y lo ejecuta, pero no genera un exe o dll que puedas distribuir a los usuarios. Cuando usas la opcion Debug, el exe (o dll) generados quedan en la carpeta bin\debug, dentro de la carpeta de tu proyecto.
- Release: se usa para generar el exe o la dll que vos le vas a dar a los usuarios del programa. Cuando usas esta opcion, el exe o la dll quedan en la carpeta bin\release, adentro de la carpeta de tu proyecto.
Espero haberte aclarado tus dudas, y no hay drama en seguir ayudando
Suerte!
Bye!
Fisa
Correo:
[email protected]
MSN:
[email protected]