Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

dll could not be run

I'm guessing its a problem with Windows Installer. I've tried restarting the service but to no effect. I'm not able to install anything that ends with .msi. Sometimes I get such an error message:

enter image description here

Event viewer logs:

Python installer:

Product: Python 2.7.3 -- Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action CheckDir, entry: _CheckDir@4, library: C:\Users\x\AppData\Local\Temp\MSI570C.tmp

SSDLife installer:

Product: SSDlife Pro -- Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action WIX_TestVersion, entry: WIX_TestVersion, library: C:\Users\x\AppData\Local\Temp\MSIA32E.tmp

Searching on error 1723: This error can occur if you have an out-of-date version of Windows Installer

I got a couple of links for Windows Installer but neither of them has Windows 7 on the list of supported operating systems.

https://www.microsoft.com/en-us/download/details.aspx?id=25 and

https://www.microsoft.com/en-us/download/details.aspx?id=8483&WT.mc_id=MSCOM_EN_US_DLC_DETAILS_131Z4ENUS22007

Windows(7 x64) is up to date.

Also tried this Fixit: http://support.microsoft.com/mats/Program_Install_and_Uninstall

But it couldn't find any issues.

share|improve this question
    
@Serge yes, avast, tried disabling and running the installer right now, but it doesn't seem to help –  kedar Sep 23 '12 at 16:13
    
clean out your temp folder and try again. –  Moab Sep 23 '12 at 16:16
    
@Moab nope, that doesn't help –  kedar Sep 23 '12 at 16:25
    
Please specify the OS where you observe the issue. –  Alexey Ivanov Sep 24 '12 at 6:25
    
@Moab all of them –  kedar Sep 24 '12 at 13:45

5 Answers 5

up vote 13 down vote accepted

I ran into this issue, too. Alexey Ivanov's response didn't quite help me, but it did, however, inspire me to investigate C:\Users\x\AppData\Local\Temp.

As usual, error messages were only half-useful. In my case, the DLL wasn't missing--the installer didn't have permissions to access the folder. I didn't try running the installer as an administrator--this didn't make sense to me considering I was already using an admin account and would have expected UAC to handle privileges elevation. Anyway, like many things in Windows, this whole thing is a bit of a mystery to me.

Nevertheless, after going to Properties > Security on the C:\Users\x\AppData\Local\Temp folder and giving that Everyone the Full control permission, installers that previous had been failing now worked! Hooray! Since Everyone already had Read and Write access, I suspect that Full control also added a necessary Execute permission.

What I wonder, now, is how this happened in the first place, and what the correct permissions on this directory are supposed to be.

share|improve this answer
1  
This solves my problem! But I think it's a security issue to give 'Everyone' full access to a user's temp folder. I just granted myself full access and that works. Be default the directory just had 'Special Permissions' for the user. –  kedar Jan 1 '13 at 4:08
    
Yeah, that makes more sense than giving the permission to Everyone :-). Anyway, I wonder what the underlying cause of this problem may be. I was having trouble with several installers, including the iTunes installer—a very popular installer! I wonder what happened that broke permissions on that directory. –  dimadima Jan 2 '13 at 0:39
    
I checked other limited/admin accounts on the same machine and all of them seem to have the permissions set correctly. –  kedar Jan 2 '13 at 4:24
    
thanks, you're the best. –  Julius Jun 26 '13 at 7:42
    
This did not work for me (Windows 7, 32 bit). This did. My error, however, was "There is a problem with this Windows Installer package. A Program run as part of the setup did not finish as expected. Contact your support personnel or package vendor." –  aliteralmind Jul 22 at 13:57

A simple workaround is to run the command shell as administrator (just search cmd.exe and then right click-> run as administrator), and then go to location of the MSI package and run msiexec /i packagename.msi. It worked for me.

share|improve this answer
1  
It's not a workaround(doesn't install all software properly), and it doesn't work(for this specific problem) –  kedar Feb 14 '13 at 15:26
    
One small mistake: Here is the right command msiexec /i packagename.msi –  user204153 Mar 4 '13 at 21:01
    
This solution works perfectly and is better than giving Full Permissions of Temp folder to Everyone just for an installer. (Make sure to read the second comment for the correct syntax.) –  Gaurav Kumar Apr 21 '13 at 7:27
    
+1 This solution should also be included in the above chosen answer. That chosen answer should be everyone's last resort. –  tom_mai78101 Apr 20 at 13:14

Your system must be missing a required DLL.

In both cases you describe, Windows Installer tried to execute a custom action located in a DLL. Those .tmp files: C:\Users\x\AppData\Local\Temp\MSI570C.tmp and C:\Users\x\AppData\Local\Temp\MSIA32E.tmp are really DLL files extracted from the MSI.

But for some reason it failed to load the DLL.

The most important thing is to find out which DLL is missing. While the error message is on screen, go to your temp directory and see if the temp DLL file still exists. If it is there, copy it with DLL extension. Then to find out which DLL of the required ones is missing, you can use depends.exe utility from Visual Studio.

If the temp file is already removed, the only way to get the DLL is to extract it from the package, from Binary table.

I have two most probable possible candidates: Visual C++ runtime is missing or .Net runtime is missing. However, it's just a guess…

share|improve this answer
    
I only see the error log getting created in the temp directory. Nothing else. But looking into extracting files from the installer, I tried the msiexec command to extract Python and all files are now available as they would be in a normal install. Except I don't see any entry in the list of installed software. Adding python to path, it works as expected... –  kedar Sep 24 '12 at 14:22
1  
I guess it just happens too fast to notice. Yes, you can extract files from Windows Installer package, but it won't perform program registration because the product is not installed (from MSI point of view). These tmp DLL files are not part of the install image, they are helpers which are run during installation. To get it, you can use Orca tool or decompile the msi with WiX; however, you've already got Python. –  Alexey Ivanov Sep 25 '12 at 6:04
    
I think I can live without having the software registered. Full command: msiexec /a python.msi /qb TARGETDIR="C:\install_path" –  kedar Sep 25 '12 at 11:53

I tried what Dimadima suggested but I still had a little access issue. I dug up a tool for Win 7 / Vista called take ownership. It adds a contextual menu to right click and you can 'Take Ownership'. I thought to try that it it worked like a charm.

http://www.howtogeek.com/howto/windows-vista/add-take-ownership-to-explorer-right-click-menu-in-vista/

share|improve this answer

None of these solutions worked for me, however when I went directly to the download folder, right clicked the icon of the install I wanted to perform, and clicked "run as administrator" it installed without any more error messages.

share|improve this answer
    
MSI installers don't have that option. –  kedar Mar 8 '13 at 9:55

protected by slhck Mar 8 '13 at 10:01

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.