Can't find msi installer when uninstalling. Creating msi packages and installing any software using Windows group policies

  • tutorial

Good day, Habr! I want to present an interesting, in my opinion, way to create msi installers for any software and, as a consequence, its deployment by means of GPO. I emphasize that the described method does not imply the creation of "casts" of the system, but uses native software installers, and only free products for commercial use are used to create msi.

Introduction, a couple of links and a disclaimer

Every normal software installer has the ability automatic installation with defined or default parameters. The essence of my method is simple and consists in packing the native installer into an msi "container" and running it with necessary parameters command line. There is a lot of information on the network on the automatic installation of this or that application, and I will not focus on this. Our goal, I repeat, is to install software using group policies. By the way, some of you may object that the installation can be done through ZAW, but, unfortunately, this method applicable only for installation with the rights of the current user and cannot be used for centralized automatic installation of applications.

An interesting series of articles on installing software through the GPU. For beginners, I recommend reading everything so that you don’t ask later what is the difference between the “assigned” and “public” installation types.

Required software. Exe to MSI Converter freeware and the well-known orca The first is needed in order to create an msi from an exe, and the second so that the resulting msi nickname can be installed through group policies.

The method does not claim to be completely unique and in some places there may be excesses that could be avoided, but this is due to the lack of desire and the need to delve too deeply into the parameters of the msi-package tables. The original goal was to quickly find free way creating an msi and after hours of reading foreign forums and endless reboots virtual machine, the method was found. Also, the article is not a review of the program interface, and you will not see screenshots.

Creating and preparing a package

An installation example will be produced for Mozilla Firefox, because it is a well-known product that does not have an msi installer from the developers.
  1. Run exe to msi and specify the path to the firefox exe installer in it. According to the information previously found on the network, it becomes clear that you can quietly install the firelis with the parameters -ms -ira. We specify them in the second field exe to msi and click "Build MSI".
  2. It would seem that everything, the msi-package is ready. Indeed, by running the resulting result, we will get the firefox installed in the system, and the article could be put to rest. Unfortunately, not everything is so simple. The current installation package is not suitable for deployment through GPO, and when you boot your computer, you will receive completely unexplainable errors in the logs “an unrecoverable error has occurred ...” And the thing is that the developers of exe to msi also want to eat them free product generates msi "not according to the rules".
  3. Well, let's take an orca and open our emcian in it.
  4. First of all, we find the table in the left list property and pay attention to two fields - product code And UpgradeCode. These two fields must be unique for each product, and our exe to msi generates always the same. Well, it doesn't matter, click on top menu View -> Summary Information, find the field package code and click New GUID. The resulting result is copied to the clipboard and pasted into product code. Repeat for UpgradeCode and finally for myself package code. Right there in Summary Information edit the field Title on Mozilla Firefox, the rest is optional. It basically doesn't affect anything.
  5. Again in the table property me ProductName on Mozilla Firefox (I change a lot ARPCONTACT And manufacturer). You can also set the correct value for ProductVersion.
  6. It seems that the GUID and other "IDs" have changed, but as practice shows, this is not enough. Click in orca Tools –> Validate, take off the bird Show INFO Messages and press go.
  7. As you can see, a bunch of errors came out for the presence / absence of some tables and values. I didn’t bother and just took the first small msi that came across (7zip x64 9.20) and copied the 4 missing tables from there (via Export-Import, of course): _Validation, AdminExecuteSequence, AdminUISequence and AdvtExecuteSequence. In fact, I am sure that it is possible to create a "correct" msi installer, without unnecessary garbage, but do not forget, our goal is just to run the application's native setup in silence.
  8. After adding tables, go through again Tools –> Validate(by the way, the first time you can skip the check at all and immediately import the tables). If you also took msi from 7zip as a basis, then the result will be six errors that need to be eliminated. Click close, delete extra fields marked in red.
  9. At the end, you can check the validation again and make sure that only non-interfering warnings remain. Save msi.
  10. That's basically all, it remains to add msi to the GPU and assign the necessary properties.

Nuances

  1. When installing by the method described above, you will have, as it were, two copies of the software. The first one is actually desired application, and the second - the original msi-nick, because we sort of set it. In principle, this does not affect anything, except for the display in "Add or Remove Programs", and then only in Windows XP (if you have not changed anything other than what I have indicated). The disadvantage may be the appearance extra programs during automatic software inventory, if you use it.
  2. You will not be able to automatically uninstall the application using the same deployment tools. More precisely it will turn out, but only the unnecessary msi-container will be deleted. Well, you can tinker with the msi properties when creating it, so that it takes the previously installed application with it, also quietly. I did not set such a task.
  3. When installing software updates, you need to specify in the application's GPU properties that it replaces the previous one, that is, it must first delete the old one. This ensures that you will not have those same left-handed duplicates of applications in “installing and removing programs” that have not given up to anyone.
  4. To install an application that has a distribution of several files, you will first have to pack it into an exe, which, when launched, will unpack itself and give a command to quiet installation. I recommend creating sfx archives using the same 7-zip.
  5. Nothing prevents you from installing software through startup scripts. Moreover, this method is more flexible, and I have been using it for a long time through my scripts. That's just the use of native GPU tools is much faster, because a simple creation of msi from exe takes a couple of minutes.
  6. Windows 7 for some reason doesn't say "Installing a managed application..." but just says "please wait". When deploying a whole bunch of software at once for the first time, or when installing a heavy application, this can induce the user to call the admin or press the reset button.
That seems to be all, I hope it was interesting, share your experience.

Purpose of msi.dll

Aile msi.dll is required for installation Microsoft packages Installer (MSI) . If this file is removed, the Windows Installer will not work.

In this article, we will be discussing the msi.dll error instance on a Windows computer and its solution.

Msi.dll error in Windows

When you try to install any Windows Installer program on a Windows computer, you may receive an error message similar to the one presented here:

“MSIEXEC.EXE file is associated with missing MSI.DLL:222 export.”

After pressing the button OK, another error message similar to the one mentioned below appears:

“Cannot start C:\Windows\System\MSIEXEC.EXE device connected to the system that is not working.”

Cause of error

This problem occurs if Windows files Installer on the computer will attempt to update the Windows File Installer.

Permission

When the problem described above occurs, the first thing you need to do is restart your computer and try to install again Windows program office. If the Windows Installer has promoted the files, or the files are not copied to their correct location. Instead, they are first copied to a temporary folder. Only when you restart your computer are the files copied to the appropriate folder. To resolve this error message, follow these steps.

Task 1 - Download the Installer windows update

  1. Click the link button and click the button Download located next to InstMsiA.exe.
  2. Save file on your desktop.

Task 2 - Rename the Windows Installer files

  1. Go to menu Start and select Turn off computer.
  2. Next, click the button Restart your computer in MS-DOS mode, and then click the button OK .
  3. Type the following commands at the command prompt and press Enter after each command to execute them. cd system
    ren msi.dll msi.old
    ren msihnd.dll msihnd.old
    ren msiexec.exe msiexec.old
    exit
  4. Restart Windows.

Task 3 - Start Windows in Safe Mode

  1. Click the button Start and select the item Turn off computer.
  2. Next, click the button Reload and press the button OK.
  3. Press and hold the button SHIFT when the window is reloaded.

Task 4 - Installing the Windows Update Installer for Windows

  1. Double click on the file InstMsiA.exe saved on the desktop.
  2. Next, follow the instructions on the screen to complete the installation process.
  3. Finally, restart your computer.

If the registry asks questions, the reason for which DLL errors, such as msi.dll errors?

Yes, they do this because the registry is actually messed up or corrupted, which is often the cause of a common DLL error. Entries related to DLL files are stored in the registry. You may receive recurring DLL errors if entries related to DLL files are corrupted or missing. Fixes for DLL errors such as msi.dll errors that cause registry issues. Scan the registry using an effective registry cleaner such as RegGenie. This powerful tool, which allows you to perform a custom registry scan to fix DLL errors.

MSI.DLL - Is it a security file?

Yes, true msi.dll is a security file from Microsoft. However, several copies malware, use a file named msi.dll . To determine msi.dll on your PC it is not a system threat, scan your entire Windows PC using reliable and effective means security.

You can use the msiexec command with command-line options to invoke the install or uninstall procedure. The parameters of the msiexec command are passed information that is typically specified during an interactive installation using WebSphere MQ installation panels. To do this, enter the following command at the command prompt along with the required options: msiexec [options]

When working with WebSphere MQ in Windows systems® Vista or Windows Server 2008 with User Account Control (UAC) enabled, a silent install or uninstall must be run from an elevated user command prompt. To do this, click right click mouse to launch command prompt and select Run as administrator. If you try to run a non-interactive install or uninstall without elevated user privileges, you will see error AMQ4353 in the installation log.

The msiexec command supports two types of command line options:

You must first specify the command-line options in the msiexec command, and then the property=value pairs.

If a parameter is specified on both the command line and in the response file, the value on the command line takes precedence.

An example of using the msiexec command: msiexec /i "" /l*v c:\install.log /m file-mif TRANSFORMS="1033.mst" AGREETOLICENSE="yes" ADDLOCAL="Server" where: /i "path \MSI\IBM WebSphere MQ.msi" Installing the product using specified file.msi . /l*v c:\install.log Generates an install.log log file containing detailed information about installation. /m mif file Create a Microsoft® System Management Server (SMS) state file, .mif : mif file. TRANSFORMS="1033.mst" Specifies that the installation is performed on English language(USA). Additional Information for other languages ​​see section Using transformations for the msiexec command. AGREETOLICENSE="yes" Accept the license terms. ADDLOCAL="Server" Installs the server component locally.

Tab. 1. msiexec command line options
Parameter Options Description
/a Plastic bag Administrative installation of the product over the network, i.e. installing the original application image, similar to the image on the CD.
/i plastic bag|code of product Install or configure the product using the specified .msi file.

WebSphere MQ Windows installer package: IBM WebSphere MQ.msi .

/j

package|
Package /t TransformList|
Package /g Language ID

Product alert.

This option ignores all property values ​​specified on the command line.

u Notify current user m Notify all users on this system g Language ID t Apply transformation to package

/l

log-file

Specifies the path to the log file, as well as flags that indicate information to be logged.

i Status messages w Fatal warnings e All error messages a Triggering actions r Action records u User prompts c Initial user interface settings m Low memory or fatal exit information o Low disk space messages p Terminal properties v Verbose output + Info added to existing file! Each line is logged * All information except for the v option is logged. To log all information, including the v option, specify "/l*v"

/q n|b|r|f The level of user interface displayed during installation.

q, qn No user interface. Non-interactive installation without user interface. qb Main user interface. Displays built-in dialog boxes with status messages qr Reduced user interface, displays a modal dialog box at the end of installation. qf Full user interface, a modal dialog box is displayed at the end of the installation. qn+ No user interface, a modal dialog box is displayed at the end of installation. qb+ Main user interface, a modal dialog box is displayed at the end of installation. The modal window is not displayed if the user canceled the installation. qb - Main user interface without modal windows. Note that the /qb+- UI level is not supported.

/x plastic bag|code of product Removing a product.

Note:

  1. Do not use the /i , /x , /j and /a options at the same time.
  2. The /t and /g options can only be used with /j .
  3. The /l and /q options can be used with /i , /x , /j and /a .

In the tables Using an answer file with the msiexec command.

SAVEINI path\file name During installation, a response file is created. The file contains the options selected for this installation, which the user can set during an interactive installation. ONLYINI 1|yes| "" 1, yes, or any other non-zero value: Complete the installation before updating the target system, but after generating the response file (if specified).

"". Continue installation and update the target system (default).

TRANSFORM path\file name Specifies the transform (.mst) files to apply to the product. For example: the file "1033.mst" points to the translation file for the English (US) locale.