예제 #1
0
        private bool ExecuteDatabaseScript(GCInterface gcInterface, RuleScript script, bool backup)
        {
            GCError.ClearLastError();

            // validate interface
            if (script == null || script.Type == RuleScriptType.None)
            {
                GCError.SetLastError("Invalid script.");
                return(false);
            }

            string sqlFileName = null;

            if (backup)
            {
                sqlFileName = script.GetBackupFileName();
            }
            else
            {
                sqlFileName = script.FileName;
            }

            try
            {
                sqlFileName = ConfigHelper.GetFullPath(gcInterface.FolderPath + "\\" + sqlFileName);
                if (!File.Exists(sqlFileName))
                {
                    return(true);
                }

                if (!DataBase.OSQLExec(sqlFileName))
                {
                    GCError.SetLastError("Run sql script failed.\r\nOSQL.EXE Path:" + DataBase.OSQLFileName + "\r\nDatabase: " + DataBase.OSQLDatabase + "\r\nSQL File Path:" + sqlFileName);
                    return(false);
                }
            }
            catch (Exception err)
            {
                GCError.SetLastError("Run sql script exception.\r\nOSQL.EXE Path:" + DataBase.OSQLFileName + "\r\nDatabase: " + DataBase.OSQLDatabase + "\r\nSQL File Path:" + sqlFileName);
                GCError.SetLastError(err);
                return(false);
            }

            return(true);
        }
예제 #2
0
        private bool BackupScriptFile(RuleScript scriptFile)
        {
            if (scriptFile == null)
            {
                return(false);
            }
            string oldFilename = Application.StartupPath + "\\" + scriptFile.FileName;
            string newFileName = Application.StartupPath + "\\" + scriptFile.GetBackupFileName();

            if (File.Exists(oldFilename))
            {
                Program.Log.Write("Uninstall script found. " + oldFilename);
                if (File.Exists(newFileName))
                {
                    File.Delete(newFileName);
                }
                File.Copy(oldFilename, newFileName);
                Program.Log.Write("Uninstall script backuped. " + newFileName);
            }
            return(true);
        }