November Happy Hour will be moved to Thursday December 5th.

VPP Migration Tool Exception

Vote:
 

Hi,

We are trying to migrate a site we are currently building to 7.5, and we are getting issues when trying to run the VPP tool.

I have unblocked the application and i am running it as administrator. When i run it on our Windows 2012 Server i get the following error: 

Could not load file or assembly 'file:///C:\EPiServer7.5VppMigrationTool\VppMigrationTool.exe' or one of its dependencies. Operation is not supported. (Exception from HRESULT: 0x80131515)


at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark)
at System.Reflection.Assembly.LoadFrom(String assemblyFile, Evidence securityEvidence)
at System.Activator.CreateInstanceFromInternal(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, Evidence securityInfo)
at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName)
at System.AppDomain.CreateInstanceFrom(String assemblyFile, String typeName)
at VppMigrationTool.Util.RuntimeProxyWrapper.GetSiteProxy() in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Util\RuntimeProxyWrapper.cs:line 43
at VppMigrationTool.Converter.get_RuntimeProxyWrapper() in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Converter.cs:line 52
at VppMigrationTool.Converter.FillSiteData() in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Converter.cs:line 101


--- Inner exception ---


An attempt was made to load an assembly from a network location which would have caused the assembly to be sandboxed in previous versions of the .NET Framework. This release of the .NET Framework does not enable CAS policy by default, so this load may be dangerous. If this load is not intended to sandbox the assembly, please enable the loadFromRemoteSources switch. See http://go.microsoft.com/fwlink/?LinkId=155569 for more information.

 

When i run this on my development machine i get the following errors:

Could not load file or assembly 'EPiServer.TinyMCESpellChecker, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.


at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection)
at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)
at System.Reflection.Assembly.Load(String assemblyString)
at System.UnitySerializationHolder.GetRealObject(StreamingContext context)

at VppMigrationTool.Util.SiteProxy.Initialize(String destinationPath, String virtualDirectory)
at VppMigrationTool.Converter.get_RuntimeProxyWrapper() in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Converter.cs:line 52
at VppMigrationTool.Converter.FillSiteData() in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Converter.cs:line 101


--- Inner exception ---


The system cannot find the file specified. (Exception from HRESULT: 0x80070002)


at System.Reflection.RuntimeAssembly.nLoadFile(String path, Evidence evidence)
at System.Reflection.Assembly.LoadFile(String path)
at VppMigrationTool.Converter.CurrentDomain_AssemblyResolve(Object sender, ResolveEventArgs args) in d:\Builds\132\EPiServerCMS Modules\VppMigrationTool\Sources\C\TFS\VppMigrationTool\Converter.cs:line 40
at System.AppDomain.OnAssemblyResolveEvent(RuntimeAssembly assembly, String assemblyFullName)

 

Any help with this would be greatly appreciated.

#79230
Dec 11, 2013 12:12
Vote:
 

Is the site functional? The migration tool will execute in an AppDomain on same location as the site so you need to have the site functional before running the migration.

#79232
Dec 11, 2013 13:07
Vote:
 

yeah i can browse the site and even get to the administration area of the site

#79236
Dec 11, 2013 13:32
Vote:
 

ok, so an upate - on my development machine the tool seems to work.

 

however when i try to run it on the server (the first stack exception above) it still fails. i have admin rights on the machine, and i run it as admin. i currently have the tool located within the wwwroot folder - and the site is in c:\inetpub\wwwroot\<sitename>\

this is the last step of the upgrade for us so its pretty important we resolve it asap

#79240
Dec 11, 2013 14:15
Vote:
 

I will see if I can reproduce the issue. What you could try is open the config file for the migration tool and add an element

<loadFromRemoteSources  
   enabled="true"/>

as descibed in http://msdn.microsoft.com/en-us/library/dd409252(VS.100).aspx
#79244
Dec 11, 2013 15:11
Vote:
 

Hi adam.


I am facing same error with migration tool. How did you fixed ? can you give me some help ?

#79258
Dec 11, 2013 19:14
Vote:
 

Ok, now I have investigated this a bit further. The problem is that even if you unblocked the .exe the other .dll files are still blocked. And because of that it fails when one of them is Loaded.

The solution is to either unblock the zip before extracting it or add the element <loadFromRemoteSources> as described above.

#79266
Dec 12, 2013 9:01
Vote:
 

sorry for the delay, but i can confirm that Johan's suggestion worked on 4 different environments and repeatedly so.

thanks for your assistence

#79298
Dec 12, 2013 15:38
This topic was created over six months ago and has been resolved. If you have a similar question, please create a new topic and refer to this one.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.