Register ASMX Guidance Package - Missing File

Topics: General Discussion Forum, July and December Releases Forum
Mar 25, 2007 at 6:55 PM
Long story short, I'm getting a missing file error in the logs trying to register the ASMX source code. Attached is the log. Notice towards the bottom there is a "System.IO.FileNotFoundException, can not find Microsoft.Practices.RecipeFramework.VisualStudio". I have the file on my computer, it is in the project, I'm not sure how the register process can not find it.

Microsoft.Practices.RecipeFramework.ActionExecutionException: An exception occurred during the binding of reference or execution of recipe Register. Error was: Action Register failed to execute:
Failed to process package. See the Guidance Package Development output window for more information about the error..
You can remove the reference to this recipe through the Guidance Package Manager. ---> System.Configuration.Install.InstallException: Failed to process package. See the Guidance Package Development output window for more information about the error.
at Microsoft.Practices.RecipeFramework.MetaGuidancePackage.Registration.PackageRegistationAction.ThrowFailure(DTE vs, String currentOperation, String output)
at Microsoft.Practices.RecipeFramework.MetaGuidancePackage.Registration.PackageRegistationAction.Execute()
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName, Dictionary`2 inputValues)
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionExecutionService.Execute(String actionName)
at Microsoft.Practices.RecipeFramework.Recipe.Microsoft.Practices.RecipeFramework.Services.IActionCoordinationService.Run(Dictionary`2 declaredActions, XmlElement coordinationData)
at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
--- End of inner exception stack trace ---
at Microsoft.Practices.RecipeFramework.Recipe.UndoExecutedActionsAndRethrow(Exception ex)
at Microsoft.Practices.RecipeFramework.Recipe.ExecuteActions(IDictionaryService readOnlyArguments, IDictionaryService arguments, ITypeResolutionService resolution)
at Microsoft.Practices.RecipeFramework.Recipe.Execute(Boolean allowSuspend)
at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(String recipe, IAssetReference reference, IDictionary arguments)
at Microsoft.Practices.RecipeFramework.GuidancePackage.Execute(IAssetReference reference)
at Microsoft.Practices.RecipeFramework.RecipeReference.OnExecute()
at Microsoft.Practices.RecipeFramework.AssetReference.Execute()
at Microsoft.Practices.RecipeFramework.VisualStudio.RecipeMenuCommand.OnExec()
at Microsoft.Practices.RecipeFramework.VisualStudio.AssetMenuCommand.Invoke()

Information: 0 : Starting execution of recipe Register.
Information: 0 : No previously saved state found.
Information: 0 : C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /DesignMode /i /ShowCallStack /Configuration="D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml" "D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll"
(*) Error: 0 : C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe /DesignMode /i /ShowCallStack /Configuration="D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml" "D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll"
Information: 0 : 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 D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly's progress.
The file is located at D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog.
Installing assembly 'D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll'.
Affected parameters are:
configuration = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml
designmode =
showcallstack =
i =
logfile = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog
logtoconsole =
assemblypath = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll

An exception occurred during the Install phase.
System.TypeLoadException: Microsoft.Practices.RecipeFramework.VisualStudio.RecipeFrameworkInstaller, Microsoft.Practices.RecipeFramework.VisualStudio
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError)
at Microsoft.Practices.RecipeFramework.ManifestInstaller.InitPackage(String configuration, GuidancePackage& package, IHostInstaller& installer, XmlNode& packagesNode, Boolean installing)
at Microsoft.Practices.RecipeFramework.ManifestInstaller.InstallPackage(String configuration)
at Microsoft.Practices.RecipeFramework.ManifestInstaller.Install(IDictionary stateSaver)
at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
at System.Configuration.Install.AssemblyInstaller.Install(IDictionary savedState)
at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
at System.Configuration.Install.TransactedInstaller.Install(IDictionary savedState)
The inner exception System.IO.FileNotFoundException was thrown with the following error message: Couldn't find assembly Microsoft.Practices.RecipeFramework.VisualStudio..
at Microsoft.Practices.Common.Services.TypeResolutionService.GetAssembly(AssemblyName assemblyName, Boolean throwOnError)
at Microsoft.Practices.Common.Services.TypeResolutionService.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase)

The Rollback phase of the installation is beginning.
See the contents of the log file for the D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly's progress.
The file is located at D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog.
Rolling back assembly 'D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll'.
Affected parameters are:
configuration = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml
designmode =
showcallstack =
i =
logfile = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog
logtoconsole =
assemblypath = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll

The Rollback phase completed successfully.

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


(*) Error: 0 : 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 D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly's progress.
The file is located at D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog.
Installing assembly 'D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll'.
Affected parameters are:
configuration = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml
designmode =
showcallstack =
i =
logfile = D:\My Documents\Visual Studio 2005\Projects\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog
logtoconsole =
assemblypat
Mar 25, 2007 at 7:13 PM
Ok, moved my package to the root of my D drive, in case I was hitting max path issues. It appears I had some of that going on as now I get a new set of errors. Any pointers on where to look for this error: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.

Installing assembly 'D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll'.
Affected parameters are:
configuration = D:\gp\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml
designmode =
showcallstack =
i =
logfile = D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog
logtoconsole =
assemblypath = D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll
An exception occurred while trying to find the installers in the D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly.
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.Module.GetTypesInternal(StackCrawlMark& stackMark)
at System.Reflection.Module.GetTypes()
at System.Configuration.Install.AssemblyInstaller.GetInstallerTypes(Assembly assem)
at System.Configuration.Install.AssemblyInstaller.InitializeFromAssembly()
Aborting installation for D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll.
Rolling back assembly 'D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll'.
Affected parameters are:
configuration = D:\gp\ASMX Guidance Package\ASMX Guidance Package\bin\Debug\\ASMX Guidance Package.xml
designmode =
showcallstack =
i =
logfile = D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.InstallLog
logtoconsole =
assemblypath = D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll
An exception occurred while trying to find the installers in the D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly.
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.Module.GetTypesInternal(StackCrawlMark& stackMark)
at System.Reflection.Module.GetTypes()
at System.Configuration.Install.AssemblyInstaller.GetInstallerTypes(Assembly assem)
at System.Configuration.Install.AssemblyInstaller.InitializeFromAssembly()
Aborting installation for D:\gp\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll.
Developer
Mar 27, 2007 at 3:29 PM
The first error "Microsoft.Practices.RecipeFramework.VisualStudio" not found is a GAX library. The second one is related to the installer library of the ASMX package. This installer is executed by GAX, so perhaps so may need to re install GAX/GAT. If you are using the latest (refresh) Dec-2006 version of WSSF, then you might need to install GAX 1.2 (latest release).
Mar 29, 2007 at 3:37 AM
All very odd...

I have been lucky enough to get a clean machine from my IT department, with a clean image of xp xp2. I've installed in the following order:
-vs 2005
-sp1 for vs 2005
-enterprise lib feb release
-visual studio 2005 extensions for windows workflow foundations
-GAX
-GAT
-WSSF the December refresh
-Click to install the source code for the ASMX Guidance Package
-Open the source code
-Compile ::See note below, and here is where the error maybe::
-Attempt to register

Then I receive the following error in the Guidance Package Development Output window:
An exception occurred while trying to find the installers in the D:\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll assembly.
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.Module.GetTypesInternal(StackCrawlMark& stackMark)
at System.Reflection.Module.GetTypes()
at System.Configuration.Install.AssemblyInstaller.GetInstallerTypes(Assembly assem)
at System.Configuration.Install.AssemblyInstaller.InitializeFromAssembly()
Aborting installation for D:\ASMX Guidance Package\ASMX Guidance Package\ASMX Guidance Package Installer\bin\Debug\Microsoft.Practices.ServiceFactory.Asmx.Installer.dll.

Now, of note, and this is probably where the error is but I can not put my finger on it:
When I open the ASMX Guidance Package.sln I can not compile right away. There are several references in each project that can not be found. They are:

-Microsoft.Practices.Common
-Microsoft.Practices.ComponentModel
-Microsoft.Practices.RecipeFramework
-Microsoft.Practices.RecipeFramework.Common
-Microsoft.Practices.RecipeFramework.VisualStudio
-Microsoft.Practices.WizardFramework

If I goto each package and click, 'Specific Version' to false the project will compile. Question: If I just installed the GAX and GAT and I have the latest version of the WSSF why can't it find the latest versions I have installed?

Second question, how come I do not have to change Microsoft.Practices.RecipeFramework.Library, it seems to find that package just fine?

Any ideas? Thanks again for your time.



Developer
Mar 29, 2007 at 3:05 PM
This seem to be an issue while trying to find the GAX binaries. Check if you had installed GAX 1.2 and all of these libraries are located in "DEVENVDIR\Common7\IDE\PublicAssemblies\" folder.
Regarding your second question, the Microsoft.Practices.RecipeFramework.Library belongs to GAT (different package/installation) and there are no issues with that since you did not make any changes on that reference.

BTW, which is the version number that you have on the "Version" property of any of these failing references?

Thanks,
Charly
Mar 30, 2007 at 4:17 PM
Edited Mar 30, 2007 at 4:18 PM
In my Common7\ide\PublicAssemblies folder I have all of the missing assemblies listed in my above post in the directory:

-Microsoft.Practices.Common
-Microsoft.Practices.ComponentModel
-Microsoft.Practices.RecipeFramework
-Microsoft.Practices.RecipeFramework.Common
-Microsoft.Practices.RecipeFramework.VisualStudio
-Microsoft.Practices.WizardFramework

And all have a date of 2/15/2007

When I right click on Microsoft.Practices.Commong.dll, select properties, then select the 'Version' tab I get the following:

File version: 1.2.0.3
Assembly Version: 1.2.0.0
Product Name: Microsoft Guidance Automation Runtime
Product Version: 1.2.0.3

It appears I do have the GAX 1.2 installed, would I be correct in making that assumption?

It appears the ASMX Guidance Package.csproj is looking for the following refrences:
<Reference Include="Microsoft.Practices.Common, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Practices.ComponentModel, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Practices.RecipeFramework, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Practices.RecipeFramework.Common, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Practices.RecipeFramework.VisualStudio, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.Practices.WizardFramework, Version=1.0.60429.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<Private>False</Private>
</Reference>

It appears the proejct is looking for the old GAX, is this true?

I believe I read the ASMX Guidance package was upgraded to work with the new GAX/GAT that were just released, did I miss read something?


Developer
Mar 31, 2007 at 2:38 PM
We are investigating this Ben. It appears that yout got GAX 1.2 and the Dec-2006 (Refresh) edition (published on Feb-2007) of the WSSF v2.
I'll let you know when I got any news.

Thanks,
Charly
Apr 13, 2007 at 12:21 PM
Any word on this issue? I'm pretty much stalled at this point and it has been a couple of weeks.
Developer
Apr 16, 2007 at 1:09 AM
The WSSF V2 (Dec-CTP Refresh version) only update the msi (requirements for GAX 1.2) so you can install the msi in a machine with GAX 1.2. Now when you want to run the packages, you should update the references to GAX 1.2. In that case, open the packges, refresh the references and rebuild/register them. After that, you should be able to ran all the recipes without any issue.
I'll post any further news on getting a more straighfoward procedure on this (or perhaps some readers may already found a better way to solve this).

Thanks,
Charly
Apr 16, 2007 at 4:27 PM
No Good.

From a clean xp box (I just re-ghosted it before I tried it again)

1. Install studio, visual studio sp1, all service pack updates, GAT, GAX, WSSF
2. Navigate to Start / All Programs / Microsoft P&P / WSSF / ASMX Guidance Pacakge Source Code
3. Run and extract code to d:\asm, I chose a very short directory name to avoid MAX_PATH
4. Open the solution
5. Change all of the packages that depend on the old GAX version to 'Specific Version == False ' under properties.
6. Navigate Tools / Guidance Package Manager
7. Navigate Enable and Disable packages
8. Click enable 'Guidance Package Development'
9. Close all dialog boxes
10. Compile
11. Right click on 'ASMX Guidance Package' project under 'ASMX Guidance Package' solution.
12. Select 'Register Guidance Package'
13. Error box from registration pops up

Can anyone else given these steps reproduce this error? This is the straight code from the December refresh with zero modifications and I can not get it to register. Can anyone point up where I may be going wrong, or something else I can check, or something else I can try over here, or is there something I'm not providing? Thanks!
Developer
Apr 16, 2007 at 11:01 PM
After step #5, go to "ASMX Guidance Package Installer" project and update (remove and add) the references to "Microsoft.Practices.RecipeFramework" and "Microsoft.Practices.RecipeFramework.VisualStudio" libs.
Notice that these bins are located in VS PublicAssemblies (..\Microsoft Visual Studio 8\Common7\IDE\PublicAssemblies).

On the other hand, youmay also want to replace (at sln level) all "Version=1.0.51206.0" to "Version=1.2.0.0". (Actually the are only in the VS templates).
Apr 17, 2007 at 7:10 AM
Edited Apr 17, 2007 at 7:11 AM
I came here from the "Install problem. Unable to get installer types." topic. (the topic was redirected here)

I'm sorry to say that I'm not able to do any of these steps. For me the installer (WSSF msi) craps out and won't let me install anything. So I'm not able to reach the register ASMX source code step.

I do have GAX 1.2 installed (had some trouble with the SCSF as well so I pretty much removed everything and installed it clean again). I am also pretty much stalled with this as I'm not able to even install.
Coordinator
Apr 17, 2007 at 8:26 AM
Have you ensured that this is not being caused by the second known issue ("Installation fails") in the Other Known Issues section of the Known Issues document for Service Factory?
Apr 17, 2007 at 12:26 PM
Edited Apr 17, 2007 at 12:27 PM

charlyfriend wrote:
After step #5, go to "ASMX Guidance Package Installer" project and update (remove and add) the references to "Microsoft.Practices.RecipeFramework" and "Microsoft.Practices.RecipeFramework.VisualStudio" libs.
Notice that these bins are located in VS PublicAssemblies (..\Microsoft Visual Studio 8\Common7\IDE\PublicAssemblies).

On the other hand, youmay also want to replace (at sln level) all "Version=1.0.51206.0" to "Version=1.2.0.0". (Actually the are only in the VS templates).


Worked like a charm...what scares me is that this solution very much resembles "unplug it and plug it back in" type of solution.

A quick follow up, so I can better understand how Visual Studio works, wouldn't step #5 where I changed all of the references from specific version = true to false do the exact same thing as removing and adding the assemblies back in by hand?

I ask because these the properties window for these two assemblies read exactly the same before I removed them and after I added them back in except for the specific version property.

Thanks again for all of your help.
Apr 17, 2007 at 12:53 PM

donsmith wrote:
Have you ensured that this is not being caused by the second known issue ("Installation fails") in the Other Known Issues section of the Known Issues document for Service Factory?


No, I hadn't checked that and I checked all three issues. Removed an old Microsoft Webservice Factory folder (there was no entry under Add Remove programs though), checked for Visual Web Developer and installed to C:\WSSF to ensure not running into 250 limit. But no luck...