コード例 #1
0
ファイル: UpdateForm.cs プロジェクト: nhhuy1804/Wmall
        /// <summary>
        /// Run all sql files in a folder
        /// </summary>
        /// <param name="folder"></param>
        void RunPatchSql(string folder, string dbFile)
        {
            string[] sqlFiles = Directory.GetFiles(folder, "*.sql");
            foreach (var filePath in sqlFiles)
            {
                string sqlCommand = File.ReadAllText(filePath);

                try
                {
                    string connString = string.Format(CONN_STRING, dbFile);
                    using (SQLiteConnection conn = new SQLiteConnection(connString))
                    {
                        using (var cmd = new SQLiteCommand(sqlCommand, conn))
                        {
                            cmd.CommandType = CommandType.Text;
                            if (conn.State != ConnectionState.Open)
                            {
                                conn.Open();
                            }

                            cmd.ExecuteNonQuery();
                        }
                    }
                }
                catch (Exception ex)
                {
                    POSFtpClient.LogMessage(ex);
                }
            }
        }
コード例 #2
0
ファイル: UpdateForm.cs プロジェクト: nhhuy1804/Wmall
        /// <summary>
        /// Clear old folders
        /// </summary>
        void CleanOldTempFolders()
        {
            var   folders = Directory.GetDirectories(m_tempFolder);
            Int64 pv      = 0;

            Int64.TryParse(GetPOSVersion(), out pv);
            foreach (var folder in folders)
            {
                Int64  vf = 0;
                string f  = folder.Substring(m_tempFolder.Length);
                f = f.Replace("\\", "");
                Int64.TryParse(f, out vf);
                if (vf < pv)
                {
                    try
                    {
                        Directory.Delete(folder, true);
                    }
                    catch (Exception ex)
                    {
                        POSFtpClient.LogMessage(ex);
                    }
                }
            }
        }
コード例 #3
0
ファイル: UpdateForm.cs プロジェクト: nhhuy1804/Wmall
        /// <summary>
        /// 사전준비작업
        /// </summary>
        void Step01_PrepareStarter()
        {
            if (!Directory.Exists(m_tempFolder))
            {
                Directory.CreateDirectory(m_tempFolder);
            }

            // get ftp info
            string ftpServer   = GetPOSConfig("PosFTP", "FtpSvrIP1");
            string sFtpPort    = GetPOSConfig("PosFTP", "FtpComPort1");
            Int16  ftpPort     = string.IsNullOrEmpty(sFtpPort) ? (Int16)21 : Convert.ToInt16(sFtpPort);
            string ftpUser     = GetPOSConfig("PosFTP", "User");
            string ftpUserPass = GetPOSConfig("PosFTP", "Pass");

            m_ftpClient = new POSFtpClient(ftpServer, ftpPort,
                                           new System.Net.NetworkCredential()
            {
                UserName = ftpUser,
                Password = ftpUserPass
            });

            m_ftpClient.ProgressChanged  += new EventHandler <ProgressEventArgs>(m_ftpClient_ProgressChanged);
            m_ftpClient.ConnectionFailed += new EventHandler <ConnectionFailedEventArgs>(m_ftpClient_ConnectionFailed);
            m_localVersionFile            = Path.Combine(m_tempFolder, VERSION_FILE);

            GetStorePosInfo();

            // SERVER Upgrade경로
            m_serverPOSFolder = GetPOSConfig("PosFTP", "VersionInfoPath");

            // delete previous date folder version;
            CleanOldTempFolders();
        }