Exemplo n.º 1
0
        private void btnRestore_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtFilePath.Text.Trim()))
            {
                RadMessageBox.Show("Bạn phải chọn tập tin dữ liệu để phục hồi", "Lỗi", MessageBoxButtons.OK, RadMessageIcon.Error);
                return;
            }
            RestoreHelper restore  = new RestoreHelper();
            string        dbName   = ConfigurationManager.AppSettings["Database"];
            string        usr      = ConfigurationManager.AppSettings["User"];
            string        pwd      = ConfigurationManager.AppSettings["Password"];
            string        server   = ConfigurationManager.AppSettings["Server"];
            string        dataFile = ConfigurationManager.AppSettings["DataFilePath"];
            string        logFile  = ConfigurationManager.AppSettings["DataFilePath"];

            try {
                restore.RestoreDatabase(dbName, txtFilePath.Text, server, usr, pwd, dataFile, logFile);
                RadMessageBox.Show("Phục hồi dữ liệu thành công", "Thành công", MessageBoxButtons.OK, RadMessageIcon.Info);
                this.Close();
                Process.Start(@"..\..\..\NganHangDeThi\bin\Debug\NganHangDeThi.exe");
            } catch {
                RadMessageBox.Show("Không thể phục hồi, bạn hãy chắc chắn rằng tất cả kết nối đến cơ sở dữ liệu đều đã được đóng và thử lại.",
                                   "Lỗi", MessageBoxButtons.OK, RadMessageIcon.Error);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Gets the stride SDK dir.
        /// </summary>
        /// <returns></returns>
        internal static async Task <PackageInfo> FindStrideSdkDir(string solution, string packageName = "Stride.VisualStudio.Commands")
        {
            // Resolve the sdk version to load from the solution's package
            var packageInfo = new PackageInfo {
                ExpectedVersion = await PackageSessionHelper.GetPackageVersion(solution), SdkPaths = new List <string>()
            };

            // Try to find the package with the expected version
            if (packageInfo.ExpectedVersion != null && packageInfo.ExpectedVersion >= MinimumVersion)
            {
                // Try both net5.0 and net472
                var success = false;
                foreach (var framework in new[] { ".NET,Version=v5.0", ".NETFramework,Version=v4.7.2" })
                {
                    var logger       = new Logger();
                    var solutionRoot = Path.GetDirectoryName(solution);
                    var(request, result) = await Task.Run(() => RestoreHelper.Restore(logger, NuGetFramework.ParseFrameworkName(framework, DefaultFrameworkNameProvider.Instance), "win", packageName, new VersionRange(packageInfo.ExpectedVersion.ToNuGetVersion()), solutionRoot));

                    if (result.Success)
                    {
                        packageInfo.SdkPaths.AddRange(RestoreHelper.ListAssemblies(result.LockFile));
                        packageInfo.LoadedVersion = packageInfo.ExpectedVersion;
                        success = true;
                        break;
                    }
                }
                if (!success)
                {
                    throw new InvalidOperationException($"Could not restore {packageName} {packageInfo.ExpectedVersion}, this visual studio extension may fail to work properly without it. To fix this you can either build {packageName} or pull the right version from nugget manually");
                }
            }

            return(packageInfo);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Gets the xenko SDK dir.
        /// </summary>
        /// <returns></returns>
        internal static async Task <PackageInfo> FindXenkoSdkDir(string solution, string packageName = "Xenko.VisualStudio.Commands")
        {
            // Resolve the sdk version to load from the solution's package
            var packageInfo = new PackageInfo {
                ExpectedVersion = await PackageSessionHelper.GetPackageVersion(solution), SdkPaths = new List <string>()
            };

            // Check if we are in a root directory with store/packages facilities
            var store = new NugetStore(null);
            NugetLocalPackage xenkoPackage = null;

            // Try to find the package with the expected version
            if (packageInfo.ExpectedVersion != null && packageInfo.ExpectedVersion >= MinimumVersion)
            {
                // Xenko up to 3.0
                if (packageInfo.ExpectedVersion < new PackageVersion(3, 1, 0, 0))
                {
                    xenkoPackage = store.GetPackagesInstalled(new[] { "Xenko" }).FirstOrDefault(package => package.Version == packageInfo.ExpectedVersion);
                    if (xenkoPackage != null)
                    {
                        var xenkoSdkDir = store.GetRealPath(xenkoPackage);

                        packageInfo.LoadedVersion = xenkoPackage.Version;

                        foreach (var path in new[]
                        {
                            // Xenko 2.x and 3.0
                            @"Bin\Windows\Direct3D11",
                            @"Bin\Windows",
                            // Xenko 1.x
                            @"Bin\Windows-Direct3D11"
                        })
                        {
                            var fullPath = Path.Combine(xenkoSdkDir, path);
                            if (Directory.Exists(fullPath))
                            {
                                packageInfo.SdkPaths.AddRange(Directory.EnumerateFiles(fullPath, "*.dll", SearchOption.TopDirectoryOnly));
                                packageInfo.SdkPaths.AddRange(Directory.EnumerateFiles(fullPath, "*.exe", SearchOption.TopDirectoryOnly));
                            }
                        }
                    }
                }
                // Xenko 3.1+
                else
                {
                    var logger = new Logger();
                    var(request, result) = await RestoreHelper.Restore(logger, packageName, new VersionRange(packageInfo.ExpectedVersion.ToNuGetVersion()));

                    if (result.Success)
                    {
                        packageInfo.SdkPaths.AddRange(RestoreHelper.ListAssemblies(request, result));
                        packageInfo.LoadedVersion = packageInfo.ExpectedVersion;
                    }
                }
            }

            return(packageInfo);
        }
Exemplo n.º 4
0
        static void Main(string[] args)
        {
            var ver = FileVersionInfo.GetVersionInfo(Assembly.GetExecutingAssembly().Location).ProductVersion;

            Console.Title = $"File Storage Restore Tool {ver}";
            Console.WriteLine(ConsoleHelper.Header(ver));
            var restoreHelper = new RestoreHelper(ItemClass.File);

            var database          = ConfigHelper.GetConfigurationValue("DatabaseToRestore");
            var dumpFileList      = ConfigHelper.GetConfigurationBoolean("DumpFileList");
            var restoreScriptFile = ConfigHelper.GetConfigurationValue("RestoreScriptFile");
            var restoreScriptMask = ConfigHelper.GetConfigurationValue("RestoreScriptMask");
            var sortOrder         = ConfigHelper.GetConfigurationValue("ItemSortOrder")
                                    .Equals("Size", StringComparison.InvariantCultureIgnoreCase)
                                ? ItemSortOrder.Size
                                : ItemSortOrder.Name;

            var           dateTime = DateTime.Now.ToString(restoreScriptMask);
            var           fileName = new FileInfo(restoreScriptFile.Replace("{%%DATABASE%%}", database).Replace("{%%MASK%%}", dateTime));
            StringBuilder outputScript;

            if (!dumpFileList)
            {
                outputScript = restoreHelper.FetchFilesForRestoreScript(database, sortOrder);
                // Create output directory for the script filename if it doesn't exist
                if (fileName.Directory != null && !fileName.Directory.Exists)
                {
                    fileName.Directory.Create();
                }

                // Write out the SQL Restore file
                using (var writer = new StreamWriter(fileName.FullName))
                {
                    writer.Write(outputScript.ToString());
                }
            }
            else
            {
                outputScript = restoreHelper.GenerateRestoreScript(database, true, sortOrder);

                // Write out the SQL Restore file
                using (var writer = new StreamWriter(ConfigHelper.GetConfigurationValue("DumpFile")))
                {
                    writer.Write(outputScript.ToString());
                }
            }
        }
Exemplo n.º 5
0
        private void btnRestaurar_Click(object sender, EventArgs e)
        {
            Data datos = new Data();

            datos.CloseConnection();

            Data dat = new Data();

            dat.CierraConexion();

            //string ru = "";
            //ru = "Data Source=pakosmil\\gamo;Initial Catalog=master;Persist Security Info=True;User ID=sa;Password=supervisor";

            //Data DataAccess = new Data(ru);
            //dsLoguin = DataAccess.ExecuteSPQueryDataSet(Parameters, "Sp_Select_UsuarioLogin");
            //DataAccess.CloseConnection();


            if (txtPhat.Text.Trim() == "")
            {
                MessageBox.Show("Falta información para realizar la restauración...", "MENSAJE DEL SISTEMA");
                return;
            }
            else
            {
                string Ruta = "";
                Ruta = "C:\\Archivos de programa\\Microsoft SQL Server\\MSSQL.1\\MSSQL\\Data\\";

                SqlServerBackupRestore.RestoreHelper Restaura = new RestoreHelper();
                Restaura.RestoreDatabase("prueba1", this.txtPhat.Text.Trim(), "AYALA\\AYALA", "sa", "4159", Ruta, Ruta);
                MessageBox.Show("La Base de Datos ha sido restaurada exitosamente !!!", "MENSAJE DEL SISTEMA");
                MessageBox.Show("Debe iniciar nuevamente la sesion, para completar el proceso...", "MENSAJE DEL SISTEMA");
                //buscar una forma de cerrar todas las ventanas abiertas nomas se cierra la actual
                //la pantalla principal se keda abierta...

                Close();
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// Constructor. At the moment of the constructor call the site should not be inserted yet
 /// </summary>
 /// <param name="edgePar"></param>
 public SiteRemoveUndoAction(GeomEdge edgePar)
     : base((GeometryGraph)edgePar.GeometryParent)
 {
     this.editedEdge = edgePar;
     this.AddRestoreData(editedEdge, RestoreHelper.GetRestoreData(editedEdge));
 }
Exemplo n.º 7
0
 /// <summary>
 /// Constructor. At the moment of the constructor call the site should not be inserted yet
 /// </summary>
 /// <param name="edgeToEdit"></param>
 public SiteInsertUndoAction(GeomEdge edgeToEdit)
     : base((GeometryGraph)edgeToEdit.GeometryParent)
 {
     this.editedEdge = edgeToEdit;
     this.AddRestoreData(editedEdge, RestoreHelper.GetRestoreData(editedEdge));
 }
Exemplo n.º 8
0
        /// <summary>
        /// Gets the stride SDK dir.
        /// </summary>
        /// <returns></returns>
        internal static async Task <PackageInfo> FindStrideSdkDir(string solution, string packageName = "Stride.VisualStudio.Commands")
        {
            // Resolve the sdk version to load from the solution's package
            var packageInfo = new PackageInfo {
                ExpectedVersion = await PackageSessionHelper.GetPackageVersion(solution), SdkPaths = new List <string>()
            };

            // Check if we are in a root directory with store/packages facilities
            var store = new NugetStore(null);
            NugetLocalPackage stridePackage = null;

            // Try to find the package with the expected version
            if (packageInfo.ExpectedVersion != null && packageInfo.ExpectedVersion >= MinimumVersion)
            {
                // Stride up to 3.0
                if (packageInfo.ExpectedVersion < new PackageVersion(3, 1, 0, 0))
                {
                    stridePackage = store.GetPackagesInstalled(new[] { "Stride" }).FirstOrDefault(package => package.Version == packageInfo.ExpectedVersion);
                    if (stridePackage != null)
                    {
                        var strideSdkDir = store.GetRealPath(stridePackage);

                        packageInfo.LoadedVersion = stridePackage.Version;

                        foreach (var path in new[]
                        {
                            // Stride 2.x and 3.0
                            @"Bin\Windows\Direct3D11",
                            @"Bin\Windows",
                            // Stride 1.x
                            @"Bin\Windows-Direct3D11"
                        })
                        {
                            var fullPath = Path.Combine(strideSdkDir, path);
                            if (Directory.Exists(fullPath))
                            {
                                packageInfo.SdkPaths.AddRange(Directory.EnumerateFiles(fullPath, "*.dll", SearchOption.TopDirectoryOnly));
                                packageInfo.SdkPaths.AddRange(Directory.EnumerateFiles(fullPath, "*.exe", SearchOption.TopDirectoryOnly));
                            }
                        }
                    }
                }
                // Stride 3.1+
                else
                {
                    var logger = new Logger();
                    var(request, result) = await RestoreHelper.Restore(logger, NuGetFramework.ParseFrameworkName(".NETFramework,Version=v4.7.2", DefaultFrameworkNameProvider.Instance), "win", packageName, new VersionRange(packageInfo.ExpectedVersion.ToNuGetVersion()));

                    if (result.Success)
                    {
                        packageInfo.SdkPaths.AddRange(RestoreHelper.ListAssemblies(request, result));
                        packageInfo.LoadedVersion = packageInfo.ExpectedVersion;
                    }
                    else
                    {
                        MessageBox.Show($"Could not restore {packageName} {packageInfo.ExpectedVersion}, this visual studio extension may fail to work properly without it."
                                        + $"To fix this you can either build {packageName} or pull the right version from nugget manually");
                        throw new InvalidOperationException($"Could not restore {packageName} {packageInfo.ExpectedVersion}.");
                    }
                }
            }

            return(packageInfo);
        }
Exemplo n.º 9
0
        internal static void __Initialize__()
        {
            // Only perform this for entry assembly (which is null during module .ctor)
            if (Assembly.GetEntryAssembly() != null)
            {
                return;
            }

            // Make sure our nuget local store is added to nuget config
            var    folder      = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
            string xenkoFolder = null;

            while (folder != null)
            {
                if (File.Exists(Path.Combine(folder, @"build\Xenko.sln")))
                {
                    xenkoFolder = folder;
                    var settings = NuGet.Configuration.Settings.LoadDefaultSettings(null);
                    CheckPackageSource(settings, $"Xenko Dev {xenkoFolder}", Path.Combine(xenkoFolder, @"bin\packages"));
                    break;
                }
                folder = Path.GetDirectoryName(folder);
            }

            // Note: we perform nuget restore inside the assembly resolver rather than top level module ctor (otherwise it freezes)
            AppDomain.CurrentDomain.AssemblyResolve += (sender, eventArgs) =>
            {
                if (!assembliesResolved)
                {
                    lock (assembliesLock)
                    {
                        // Note: using NuGet will try to recursively resolve NuGet.*.resources.dll, so set assembliesResolved right away so that it bypasses everything
                        assembliesResolved = true;

                        var logger = new Logger();
                        try
                        {
                            var(request, result) = RestoreHelper.Restore(logger, Assembly.GetExecutingAssembly().GetName().Name, new VersionRange(new NuGetVersion(XenkoVersion.NuGetVersion))).Result;
                            if (!result.Success)
                            {
                                throw new InvalidOperationException($"Could not restore NuGet packages");
                            }

                            assemblies = RestoreHelper.ListAssemblies(request, result);
                        }
                        catch (Exception e)
                        {
                            var logFile = Path.GetTempPath() + Guid.NewGuid().ToString() + ".txt";
                            var logText = $@"Error restoring NuGet packages!

==== Exception details ====

{e}

==== Log ====

{string.Join(Environment.NewLine, logger.Logs.Select(x => $"[{x.Level}] {x.Message}"))}
";
                            File.WriteAllText(logFile, logText);
#if XENKO_NUGET_RESOLVER_UX
                            // Write log to file
                            System.Windows.Forms.MessageBox.Show($"{e.Message}{Environment.NewLine}{Environment.NewLine}Please see details in {logFile} (which will be automatically opened)", "Error restoring NuGet packages");
                            Process.Start(logFile);
#else
                            // Display log in console
                            Console.WriteLine(logText);
#endif
                            Environment.Exit(1);
                        }
                    }
                }

                if (assemblies != null)
                {
                    var aname = new AssemblyName(eventArgs.Name);
                    if (aname.Name.StartsWith("Microsoft.Build") && aname.Name != "Microsoft.Build.Locator")
                    {
                        return(null);
                    }
                    var assemblyPath = assemblies.FirstOrDefault(x => Path.GetFileNameWithoutExtension(x) == aname.Name);
                    if (assemblyPath != null)
                    {
                        return(Assembly.LoadFrom(assemblyPath));
                    }
                }
                return(null);
            };
        }