Unable to get installer types...

Topics: User Forum
Feb 8, 2007 at 11:17 AM
I'm a Newbie to PowerShell (also end user) and want to add some cmdlets.
I'm getting an error installing "PowerShellCx1.0Setup.msi" on Win XP:

"Unable to get installer types in the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly. -> Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information."

I've received the same above message on two separate machines running
Windows XP pro SP2, Does anyone know what this problem could be ??
Thanks,
robertt7A8
Developer
Feb 8, 2007 at 12:51 PM
Can you verify whether the pscx.dll exists in that directory? If so, try to run the following command (from powershell)

& $Env:SystemRoot\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe "C:\Program Files\PowerShell Community Extensions\Pscx.dll"
Feb 9, 2007 at 7:34 PM
When installing "PowerShellCx1.0Setup.msi" the installation proceeds, 'til a dialog box reads "Unable to get installer types..." when I click OK, the installer reverses and removes the failed installation.
I saved the files that were installed (before the removal) and copied them back again to the "C:\Program Files\PowerShell Community Extensions" directory & ran the above command from powershell, (added) > log.txt"
Here is the output:

Microsoft (R) .NET Framework Installation utility Version 2.0.50727.42
Copyright (c) Microsoft Corporation. All rights reserved.


Running a transacted installation.

Beginning the Install phase of the installation.
See the contents of the log file for the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly's progress.
The file is located at C:\Program Files\PowerShell Community Extensions\Pscx.InstallLog.
Installing assembly 'C:\Program Files\PowerShell Community Extensions\Pscx.dll'.
Affected parameters are:
logtoconsole =
assemblypath = C:\Program Files\PowerShell Community Extensions\Pscx.dll
logfile = C:\Program Files\PowerShell Community Extensions\Pscx.InstallLog
An exception occurred while trying to find the installers in the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly.
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
Aborting installation for C:\Program Files\PowerShell Community Extensions\Pscx.dll.

An exception occurred during the Install phase.
System.InvalidOperationException: Unable to get installer types in the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly.
The inner exception System.Reflection.ReflectionTypeLoadException was thrown with the following error message: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information..

The Rollback phase of the installation is beginning.
See the contents of the log file for the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly's progress.
The file is located at C:\Program Files\PowerShell Community Extensions\Pscx.InstallLog.
Rolling back assembly 'C:\Program Files\PowerShell Community Extensions\Pscx.dll'.
Affected parameters are:
logtoconsole =
assemblypath = C:\Program Files\PowerShell Community Extensions\Pscx.dll
logfile = C:\Program Files\PowerShell Community Extensions\Pscx.InstallLog
An exception occurred while trying to find the installers in the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly.
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
Aborting installation for C:\Program Files\PowerShell Community Extensions\Pscx.dll.
An exception occurred during the Rollback phase of the System.Configuration.Install.AssemblyInstaller installer.
System.InvalidOperationException: Unable to get installer types in the C:\Program Files\PowerShell Community Extensions\Pscx.dll assembly.
The inner exception System.Reflection.ReflectionTypeLoadException was thrown with the following error message: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information..
An exception occurred during the Rollback phase of the installation. This exception will be ignored and the rollback will continue. However, the machine might not fully revert to its initial state after the rollback is complete.

The Rollback phase completed successfully.

The transacted install has completed.
The installation failed, and the rollback has been performed.

(DOES THIS INSTALLATION REQUIRE VISUAL STUDIO ??)
Coordinator
Feb 10, 2007 at 7:00 AM
Visual Studio is not required. Could you post the contents of this log file:

logfile = C:\Program Files\PowerShell Community Extensions\Pscx.InstallLog
Developer
Feb 11, 2007 at 3:10 AM
Edited Feb 11, 2007 at 3:38 AM
I'm afraid the install log contais pretty much the same data as the stdout output, perhaps something even less relevant.
My personal guess is that you dont have some of the assemblies we depend on. (OTOH it's strange, since 1.0 shouldn't have any 3rd party dependencies, right, Keith?).
Could you use fuslogvw.exe to enable logging of assembly binding failures, and check whether that is the problem? If you don't want to download the whole .NET Framework SDK, I uploaded the tool on http://jachymko.afraid.org/tmp/fuslogvw.exe
Coordinator
Feb 11, 2007 at 3:38 AM
The only dependency that we had that I'm aware of is Interop.Microsoft.Feeds.Interop.dll for the FeedStore provider. This unique to IE7 but we "thought" we had it worked out so that it wouldn't get loaded unless the user actually tried to use the feedstore provider.
Feb 11, 2007 at 11:32 AM
Here is the fuslogvw.log:

      • Assembly Binder Log Entry (2/11/2007 @ 02:17:36) ***

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll
Running under executable C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe
--- A detailed error log follows.

=== Pre-bind state information ===
LOG: User = MyName
LOG: DisplayName = System.Management.Automation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
(Fully-specified)
LOG: Appbase = file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = InstallUtil.exe
Calling assembly : Pscx, Version=1.0.2535.42639, Culture=neutral, PublicKeyToken=null.
===
LOG: This bind starts in LoadFrom load context.
WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load().
LOG: No application configuration file found.
LOG: Using machine configuration file from C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Post-policy reference: System.Management.Automation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
LOG: GAC Lookup was unsuccessful.
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/System.Management.Automation.DLL.
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/System.Management.Automation/System.Management.Automation.DLL.
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/System.Management.Automation.EXE.
LOG: Attempting download of new URL file:///C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/System.Management.Automation/System.Management.Automation.EXE.
LOG: Attempting download of new URL file:///C:/Program Files/PowerShell Community Extensions/System.Management.Automation.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/PowerShell Community Extensions/System.Management.Automation/System.Management.Automation.DLL.
LOG: Attempting download of new URL file:///C:/Program Files/PowerShell Community Extensions/System.Management.Automation.EXE.
LOG: Attempting download of new URL file:///C:/Program Files/PowerShell Community Extensions/System.Management.Automation/System.Management.Automation.EXE.
LOG: All probing URLs attempted and failed.


Developer
Feb 11, 2007 at 1:27 PM
System.Management.Automation is the main PowerShell assembly. It should be located in the global assembly cache (open C:\Windows\Assembly in windows explorer). How did you install powershell? Did you use the official microsoft package? If the assembly is missing from GAC, and powershell.exe works as expected, then the assembly is located in the powershell directory (\windows\system32\WindowsPowerShell\v1.0). Please copy the assembly to the GAC (use the \windows\assembly shell extension. And make sure you do it under an admin account)
Feb 12, 2007 at 3:17 AM
"C:\Windows\Assembly\System.Management.Automation" was found.
After reading your last post, it seemed reinstallation would
be necessary. At first I reinstalled the original downloaded
setup "PowerShell_Setup-i386" from Microsoft on May 2006.
That did not resolve, back to Microsoft Download Center...
Installed: WindowsXP-KB926139-x86-ENU (RC2) -Works.Great!!
I was running PowerShell_Setup-i386 (RC1).
Thanks for all your help,
robertt7A8
Developer
Feb 12, 2007 at 11:57 AM
RC2? Do you know there is the final version available since Novemeber or so?
Developer
Feb 12, 2007 at 11:57 AM
RC2? Do you know there is the final version available since November or so?