示例#1
0
        private string GetResponsiveServer(ServerType serverType, int maxNoServers, string letter, string endpointSuffix)
        {
            try
            {
                return(ResponsiveServerDeterminator.GetResponsiveURI(serverType, maxNoServers, _serverTimeout,
                                                                     letter, _primaryDomainName, _secondaryDomainName, endpointSuffix, _logger));
            }
            catch (Exception ex)
            {
                _logger.WriteError(ex);

                return("");
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            if (args.Length != 2)
            {
                Console.WriteLine("Two installation paths needed: Number of given installation paths: " + args.Length);
                Console.WriteLine("Paths:");

                foreach (string arg in args)
                {
                    Console.WriteLine(arg);
                }

                Console.ReadLine();
                return;
            }

            string binariesPath = args[0].Replace("{001}", "") + "bin\\";
            string dataPath     = args[1].Replace("{001}", "") + "data\\";

            Console.WriteLine("Binaries path:" + binariesPath);
            Console.WriteLine("Data path:" + dataPath);

            logger = new Logger("InstallCustomSteps", dataPath + "SettingsData\\OxigenDebug.txt", LoggingMode.Release);

            string systemFolder = GetSystemDirectory() + "\\";

            try
            {
                UpdateOneConfigFileWithPaths(systemFolder + "Oxigen.scr.config", dataPath, binariesPath, "");
                UpdateOneConfigFileWithPaths(binariesPath + "OxigenLE.exe.config", dataPath, binariesPath, "");
                UpdateOneConfigFileWithPaths(binariesPath + "OxigenCE.exe.config", dataPath, binariesPath, "");
                UpdateOneConfigFileWithPaths(binariesPath + "ScreenSaverConfig.exe.config", dataPath, binariesPath, "");
                UpdateOneConfigFileWithPaths(binariesPath + "OxigenService.exe.config", dataPath, binariesPath, "");
                UpdateOneConfigFileWithPaths(binariesPath + "OxigenTray.exe.config", dataPath, binariesPath, systemFolder);
                UpdateOneConfigFileWithPaths(binariesPath + "OxigenSU.exe.config", dataPath, binariesPath, systemFolder);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
                throw ex;
            }

            if (!File.Exists("Setup.ini"))
            {
                return;
            }

            string[][] subscriptions = GetSubscriptions();

            if (subscriptions == null)
            {
                return;
            }

            // register PC and upload subscriptions
            string macAddress = GetMACAddress();

            GeneralData gd            = (GeneralData)Serializer.Deserialize(typeof(GeneralData), dataPath + "SettingsData\\ss_general_data.dat", "password");
            User        user          = (User)Serializer.Deserialize(typeof(User), dataPath + "SettingsData\\UserSettings.dat", "password");
            int         noUMSServers  = int.Parse(gd.NoServers["masterConfig"]);
            int         serverTimeout = int.Parse(gd.Properties["serverTimeout"]);

            string UMSUri = ResponsiveServerDeterminator.GetResponsiveURI(ServerType.MasterGetConfig, noUMSServers, serverTimeout, user.GetUserGUIDSuffix(),
                                                                          gd.Properties["primaryDomainName"], gd.Properties["secondaryDomainName"], "UserManagementServices.svc");

            if (string.IsNullOrEmpty(UMSUri))
            {
                return;
            }

            UserManagementServicesNonStreamerClient client = null;
            StringErrorWrapper sw = null;

            try
            {
                client = new UserManagementServicesNonStreamerClient();
                client.Endpoint.Address = new System.ServiceModel.EndpointAddress(UMSUri);
                sw = client.AddSubscriptionsAndNewPC(user.UserGUID, macAddress, Environment.MachineName, gd.SoftwareMajorVersionNumber, gd.SoftwareMinorVersionNumber,
                                                     subscriptions, "password");
            }
            catch (Exception ex)
            {
                logger.WriteError(ex);
                return;
            }

            if (sw.ErrorStatus != ErrorStatus.Success)
            {
                logger.WriteError(sw.ErrorStatus + " " + sw.Message);
                return;
            }

            user.MachineGUID = sw.ReturnString;

            Serializer.Serialize(user, dataPath + "SettingsData\\UserSettings.dat", "password");
        }