Merge Module

Last updated

A merge module is a special kind of Windows Installer database that contains the components needed to install a discrete software bundle. [1] A merge module cannot be installed alone, but must be merged into a standard Windows Installer installation during the creation of the installation. Typically, a merge module or a collection of merge modules related by dependencies, installs a software product or portion of a product at runtime. The purpose of merge modules is to let you add self-contained software modules to multiple installations.

For example, if there are a number of applications that require a specifically configured component, it would be possible to create a merge module that installs and configures that component. That merge module could then be added to the installation packages of each product that required that particular component. This saves the effort of having to individually add the necessary files, registry entries, and other components to every installation. It also saves time if updates are needed, as instead of updating the installations for all applications, only the merge module is updated, and the installations only need to be rebuilt.

Standard merge modules have a .msm file extension. [1] Some merge modules may be configurable merge modules. Such merge modules contain certain values that can be set to specify how the module behaves in your installation. For example, the author of the configurable merge module may allow attributes to be set on components, enable or disable isolated components, specify a bitmap for a dialog, or specify how a custom action is run. Configurable merge modules are supported only by Windows Installer 2.0 or higher.[ citation needed ]

There exist a number of pre-created merge modules which install commonly used Microsoft software packages, such as MDAC, ActiveX controls, MFC, SAPI and DCOM.[ citation needed ]

Related Research Articles

Linux distribution Operating system based on the Linux kernel

A Linux distribution is an operating system made from a software collection that is based upon the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading one of the Linux distributions, which are available for a wide variety of systems ranging from embedded devices and personal computers to powerful supercomputers.

Package manager Software tools for handling software packages

A package manager or package-management system is a collection of software tools that automates the process of installing, upgrading, configuring, and removing computer programs for a computer's operating system in a consistent manner.

In computing, DLL Hell is a term for the complications that arise when one works with dynamic-link libraries (DLLs) used with Microsoft Windows operating systems, particularly legacy 16-bit editions, which all run in a single memory space.

Live CD

A live CD is a complete bootable computer installation including operating system which runs directly from a CD-ROM or similar storage device into a computer's memory, rather than loading from a hard disk drive. A Live CD allows users to run an operating system for any purpose without installing it or making any changes to the computer's configuration. Live CDs can run on a computer without secondary storage, such as a hard disk drive, or with a corrupted hard disk drive or file system, allowing data recovery.

Service pack

In computing, a service pack comprises a collection of updates, fixes, or enhancements to a software program delivered in the form of a single installable package. Companies often release a service pack when the number of individual patches to a given program reaches a certain (arbitrary) limit, or the software release has shown to be stabilized with a limited number of remaining issues based on users' feedback and bug reports. In large software applications such as office suites, operating systems, database software, or network management, it is not uncommon to have a service pack issued within the first year or two of a product's release. Installing a service pack is easier and less error-prone than installing many individual patches, even more so when updating multiple computers over a network, where service packs are common.

Installation of a computer program, is the act of making the program ready for execution. Installation refers to the particular configuration of a software or hardware with a view to making it usable with the computer. A soft or digital copy of the piece of software (program) is needed to install it. There are different processes of installing a piece of software (program). Because the process varies for each program and each computer, programs often come with an installer, a specialised program responsible for doing whatever is needed for the installation. Installation may be part of a larger software deployment process.

Windows Installer

Windows Installer is a software component and application programming interface (API) of Microsoft Windows used for the installation, maintenance, and removal of software. The installation information, and optionally the files themselves, are packaged in installation packages, loosely relational databases structured as COM Structured Storages and commonly known as "MSI files", from their default filename extensions. The packages with the file extensions mst contain Windows Installer "Transformation Scripts", those with the msm extensions contain "Merge Modules" and the file extension pcp is used for "Patch Creation Properties". Windows Installer contains significant changes from its predecessor, Setup API. New features include a GUI framework and automatic generation of the uninstallation sequence. Windows Installer is positioned as an alternative to stand-alone executable installer frameworks such as older versions of InstallShield and NSIS.

Windows Registry Database for Microsoft Windows

The Windows Registry is a hierarchical database that stores low-level settings for the Microsoft Windows operating system and for applications that opt to use the registry. The kernel, device drivers, services, Security Accounts Manager, and user interface can all use the registry. The registry also allows access to counters for profiling system performance.

Maven is a build automation tool used primarily for Java projects. Maven can also be used to build and manage projects written in C#, Ruby, Scala, and other languages. The Maven project is hosted by the Apache Software Foundation, where it was formerly part of the Jakarta Project.

Software deployment is all of the activities that make a software system available for use.

In computing, Java Web Start was a framework developed by Sun Microsystems that allows users to start application software for the Java Platform directly from the Internet using a web browser. Some key benefits of this technology included seamless version updating for globally distributed applications and greater control of memory allocation to the Java virtual machine.

User Account Control

User Account Control (UAC) is a mandatory access control enforcement facility introduced with Microsoft's Windows Vista and Windows Server 2008 operating systems, with a more relaxed version also present in Windows 7, Windows Server 2008 R2, Windows 8, Windows Server 2012 and Windows 10. It aims to improve the security of Microsoft Windows by limiting application software to standard user privileges until an administrator authorizes an increase or elevation. In this way, only applications trusted by the user may receive administrative privileges, and malware should be kept from compromising the operating system. In other words, a user account may have administrator privileges assigned to it, but applications that the user runs do not inherit those privileges unless they are approved beforehand or the user explicitly authorizes it.

Zend Framework (ZF) is an open source, object-oriented web application framework implemented in PHP 7 and licensed under the New BSD License. The framework is basically a collection of professional PHP-based packages. The framework uses various packages by the use of Composer as part of its package dependency managers; some of them are PHPUnit for testing all packages, Travis CI for continuous Integration Services. Zend Framework provides to users a support of the Model View Controller (MVC) in combination with Front Controller solution. MVC implementation in Zend Framework has five main areas. The router and dispatcher functions to decide which controller to run based on data from URL, and controller functions in combination with the model and view to develop and create the final web page.

In software development, CMake is cross-platform free and open-source software for build automation, testing and packaging using a compiler-independent method. CMake is not a build system but rather it's a build-system generator. It supports directory hierarchies and applications that depend on multiple libraries. It is used in conjunction with native build environments such as Make, Qt Creator, Ninja, Android Studio, Apple's Xcode, and Microsoft Visual Studio. It has minimal dependencies, requiring only a C++ compiler on its own build system.

Software remastering

Software remastering is software development that recreates system software and applications while incorporating customizations, with the intent that it is copied and run elsewhere for "off-label" usage. The term comes from remastering in media production, where it is similarly distinguished from mere copying.

Windows Vista contains a range of new technologies and features that are intended to help network administrators and power users better manage their systems. Notable changes include a complete replacement of both the Windows Setup and the Windows startup processes, completely rewritten deployment mechanisms, new diagnostic and health monitoring tools such as random access memory diagnostic program, support for per-application Remote Desktop sessions, a completely new Task Scheduler, and a range of new Group Policy settings covering many of the features new to Windows Vista. Subsystem for UNIX Applications, which provides a POSIX-compatible environment is also introduced.

Microsoft Application Virtualization is an application virtualization and application streaming solution from Microsoft. It was originally developed by Softricity, a company based in Boston, Massachusetts, acquired by Microsoft on July 17, 2006. App-V represents Microsoft's entry to the application virtualization market, alongside their other virtualization technologies such as Hyper-V, Microsoft User Environment Virtualization (UE-V), Remote Desktop Services, and System Center Virtual Machine Manager.

Endevor is a source code management and release management tool for mainframe computers running z/OS . It is part of a family of administration tools by CA Technologies, which is used to maintain software applications and track their versions.

installCore is an installation and content distribution platform, including a software development kit (SDK) for Windows and Mac OS X. The program allows those using it for distribution to include monetization by advertisements, charging for installation, etc.. The platform and programs using it have been rated potentially unwanted program (PUP) or potentially unwanted application (PUA) by anti-malware product vendors and Windows Defender Antivirus in 2014-2015. The platform was primarily designed for efficient web based deployment of various type of application software. As of August 2012 installCore was managing 100 million installations every month, offering services for paid, unpaid and free software. installCore is a product of ironSource which is headquartered in Tel Aviv with offices in San Francisco, CA in the United States and Beijing, China,

App Installer

App Installer is a software component of Windows 10, introduced in the 2016 Anniversary Update, used for the installation and maintenance of applications packaged in .appx or .appxbundle installation packages; they are loosely relational databases with an XML app manifest. The .appx and .appxbundle files contain either a Win32 or a Universal Windows Platform app, icons for the Start menu and taskbar, a virtualized version of any Windows Registry keys needed, and any other assets needed for the installed app to function.

References

  1. 1 2 "Merge Modules documentation on Dev Center" . Retrieved 5 September 2012.