protected bool DeleteDirectory(string path, bool bRecursive = true)
        {
            bool bRet = false;

            try
            {
                bRet = m_IStorage.DeleteDirectory(path, bRecursive);
                m_Logger.Writeln($"Delete Directory {path}");
            }
            catch (UnauthorizedAccessException)
            {
                m_Logger.Writeln($"Delete Read only Directory: {path}");
                m_IStorage.SetFileAttributeRecrusive(path, FileAttributes.Normal);
                bRet = m_IStorage.DeleteDirectory(path, bRecursive);
            }
            catch (Exception ex)
            {
                m_Logger.Writeln($"**Exception while deleteing directory: {path}\n{ex.Message}");
            }

            return(bRet);
        }