Пример #1
0
        /// <summary>
        ///     Get All Files from Manifest
        /// </summary>
        /// <param name="manifest"></param>
        /// <returns></returns>
        private static IEnumerable <string> GetFiles(string manifest)
        {
            var dic = YnotePackage.GenerateDictionary(manifest);

            // foreach (string item in dic.Values)
            //     files.Add(item.Replace("$ynotedir", Application.StartupPath));
            return
                (dic.Values.Select(
                     item =>
                     item.Replace("$ynotedata", GlobalSettings.SettingsDir)
                     .Replace("$ynotedir", Application.StartupPath)).ToArray());
        }
Пример #2
0
        /// <summary>
        ///     Gets Package Data
        /// </summary>
        /// <param name="package"></param>
        /// <returns></returns>
        private static IDictionary <string, string> GetPackageData(string package)
        {
            var zip  = ZipStorer.Open(package, FileAccess.Read);
            var dirs = zip.ReadCentralDir();

            foreach (var entry in dirs)
            {
                if (Path.GetFileName(entry.FilenameInZip) == "index.manifest")
                {
                    var path = Path.GetTempFileName() + "index.manifest";
                    zip.ExtractFile(entry, path);
                    return(YnotePackage.GenerateDictionary(path));
                }
            }
            return(null);
        }