Esempio n. 1
0
        /// <summary>
        /// Gets the table definitions stored in this assembly.
        /// </summary>
        /// <returns>Table definition collection for tables stored in this assembly.</returns>
        internal static TableDefinitionCollection GetTableDefinitions()
        {
            lock (lockObject)
            {
                if (null == tableDefinitions)
                {
                    Assembly  assembly = Assembly.GetExecutingAssembly();
                    XmlReader tableDefinitionsReader = null;

                    try
                    {
                        tableDefinitionsReader = new XmlTextReader(assembly.GetManifestResourceStream("Microsoft.Tools.WindowsInstallerXml.Data.tables.xml"));

#if DEBUG
                        tableDefinitions = TableDefinitionCollection.Load(tableDefinitionsReader, false);
#else
                        tableDefinitions = TableDefinitionCollection.Load(tableDefinitionsReader, true);
#endif
                    }
                    finally
                    {
                        if (null != tableDefinitionsReader)
                        {
                            tableDefinitionsReader.Close();
                        }
                    }
                }
            }

            return(tableDefinitions.Clone());
        }
Esempio n. 2
0
 /// <summary>
 /// Helper for loading table definitions from an embedded resource.
 /// </summary>
 /// <param name="assembly">The assembly containing the embedded resource.</param>
 /// <param name="resourceName">The name of the embedded resource being requested.</param>
 /// <returns>The loaded table definitions.</returns>
 protected static TableDefinitionCollection LoadTableDefinitionHelper(Assembly assembly, string resourceName)
 {
     using (Stream resourceStream = assembly.GetManifestResourceStream(resourceName))
         using (XmlReader reader = XmlReader.Create(resourceStream))
         {
             return(TableDefinitionCollection.Load(reader, false));
         }
 }
Esempio n. 3
0
 private static TableDefinition[] LoadTables()
 {
     using (var resourceStream = typeof(IisWindowsInstallerBackendBinderExtension).Assembly.GetManifestResourceStream("WixToolset.Iis.tables.xml"))
         using (var reader = XmlReader.Create(resourceStream))
         {
             var tables = TableDefinitionCollection.Load(reader);
             return(tables.ToArray());
         }
 }
        /// <summary>
        /// Gets the table definitions stored in this assembly.
        /// </summary>
        /// <returns>Table definition collection for tables stored in this assembly.</returns>
        public static TableDefinitionCollection GetTableDefinitions()
        {
            lock (lockObject)
            {
                if (null == WindowsInstallerStandardInternal.tableDefinitions)
                {
                    using (XmlReader reader = XmlReader.Create(Assembly.GetExecutingAssembly().GetManifestResourceStream("WixToolset.Core.WindowsInstaller.Data.tables.xml")))
                    {
                        WindowsInstallerStandardInternal.tableDefinitions = TableDefinitionCollection.Load(reader);
                    }
                }
            }

            return(WindowsInstallerStandardInternal.tableDefinitions);
        }
Esempio n. 5
0
        /// <summary>
        /// Gets the table definitions stored in this assembly.
        /// </summary>
        /// <returns>Table definition collection for tables stored in this assembly.</returns>
        public static TableDefinitionCollection GetTableDefinitions()
        {
            Assembly  assembly = Assembly.GetExecutingAssembly();
            XmlReader tableDefinitionsReader = null;

            try
            {
                tableDefinitionsReader = GetXmlFromEmbeddedStream(assembly, "Microsoft.Tools.WindowsInstallerXml.Extensions.Data.tables.xml");
                return(TableDefinitionCollection.Load(tableDefinitionsReader));
            }
            finally
            {
                if (null != tableDefinitionsReader)
                {
                    tableDefinitionsReader.Close();
                }
            }
        }