//
// Copyright (c) 2002
// Ronald Kevin Burton
//
// Z poniższym kodem nie jest związana żadna gwarancja poprawności działania.
// Program został dołączony do książki ".NET CLR. Księga eksperta" w celu
// ilustracji koncepcji i zasad przedstawionych w tej książce. Program może być 
// używany na własne ryzyko.
//
// Przyznaje się prawo do użycia lub kopiowania tego oprogramowania do dowolnego celu
// bez konieczności ponoszenia żadnych opłat pod warunkiem, że powyższe uwagi zostaną 
// zachowane we wszystkich kopiach. Przyznaje się także prawo do modyfikacji kodu
// i dystrybucji zmodyfikowanego kodu pod warunkiem zachowania powyższych uwag
// oraz dołączenia informacji mówiącej o modyfikacji kodu.
//
// 
using System;
using Microsoft.VisualBasic;
using Microsoft.CSharp;

namespace CodeDomHelloWorld
{
	/// <summary>
	/// Podsumowanie dla CodeDomHelloWorldMain.
	/// </summary>
	class CodeDomHelloWorldMain
	{
		static void Main(string[] args)
		{
			string [] names = { "HelloWorld.cs" };
			string target = "HelloWorld.exe";
			string [] source = new string[1];
			source[0] = 
@"using System;

namespace HelloWorld
{
	/// <summary>
	/// Podsumowanie dla HelloWorldMain.
	/// </summary>
	class HelloWorldMain
	{
		static void Main(string[] args)
		{
			Console.WriteLine(""Witaj świecie!"");
		}
	}
}";
			CSharpCodeProvider cscp = new CSharpCodeProvider();
			Compiler.CompileAndRun(cscp, source[0], target);

			source[0] = 
@"Imports System
Namespace SimpleHelloWorld
    Public Class SimpleHelloWorld
        'Uruchomienie aplikacji
        Shared Sub Main()
            Console.WriteLine(""Witaj świecie z VB!"")
        End Sub
    End Class
End Namespace

";
			VBCodeProvider vbscp = new VBCodeProvider();
			Compiler.CompileAndRun(vbscp, source[0], target);
		}
	}
}
