예제 #1
0
        static void Main(string[] args)
        {
            Log.writeLine("######################################");
            Stopwatch sw = new Stopwatch();

            sw.Start();

            // Liest die Config ein
            Log.write("Config wird eingelesen...", true, false);
            Config config;

            try
            {
                config = new Config();
            }
            catch (Exception ex)
            {
                Log.writeLine("CONFIG: " + ex.Message);
                throw;
            }
            Log.write("fertig", false, true);

            MsSql.DeleteTempTables();
            MsSql.CreateTempTables();
            Log.writeLine("Temp Datenbanken wurden erstellt");

            // Arbeitet das AD ab. Liest User, Gruppen und Computer ein
            Log.write("AD wird eingelesen...", true, true);
            ADWorker.ReadCompleteAD();



            // Läuft über jeden Server der Config
            foreach (var server in config.Servers)
            {
                Log.writeLine(server.Name + " wird gescannt...");
                // Switch über den Type um jeden Type anders zu behandeln
                switch (server.Type)
                {
                // Type = FileServer
                case ConfigType.FileServer:
                    WorkOnFileServer(server);
                    break;

                // Default
                default:
                    break;
                }

                Log.writeLine(server.Name + " wurde eingetragen");
            }

            MsSql.WriteTempToLive();

            sw.Stop();
            Log.writeLine("Deamon wird beendet");
            Log.writeLine("Laufzeit: " + (int)sw.Elapsed.TotalMinutes);
        }