/// <summary> /// /// </summary> /// <param name="strFilePath"></param> public bool RegisterPackage(string strPackageFile) { if (String.IsNullOrEmpty(strPackageFile) == true) { throw new Exception("VirtualFileManager.RegisterPackage(...) - String.IsNullOrEmpty() == true error!"); } for (int iIndex = 0; iIndex < m_StreamArchives.Length; ++iIndex) { IStreamArchive streamArchive = m_StreamArchives[iIndex]; if (streamArchive.OpenPackage(strPackageFile) == false) { continue; } else { streamArchive.ClosePackage(); IStreamArchive streamArchiveNew = streamArchive.CreateInstance(); if (streamArchiveNew == null) { return(false); } if (streamArchiveNew.OpenPackage(strPackageFile) == false) { return(false); } IStreamArchive[] tempStream = new IStreamArchive[m_PackageArchives.Length + 1]; tempStream[0] = streamArchiveNew; for (int iIndex2 = 0; iIndex2 < m_PackageArchives.Length; ++iIndex2) { tempStream[iIndex2 + 1] = m_PackageArchives[iIndex2]; } m_PackageArchives = tempStream; return(true); } } return(false); }