What tools are used on the Microsoft Store to build a msixupload file

Copper Contributor

Hello,


We faced an issue earlier this year when we uploaded a msixupload package to the Microsoft Store.

Our project is mainly a Windows Desktop Application Package that includes a UWP project and Win32 project that runs with full trust capabilities.

This package was built using VS2017. Then when we ran the program from the store(we did the submission privately), we got the following exception:

"Resolution of the dependency failed, type = \"X.Views.ShellPage\", name = \"(none)\".
Exception occurred while: Calling constructor X.Views.ShellPage().
Exception is: XamlParseException - The text associated with this error code could not be found.

Failed to assign to property 'Prism.Windows.Mvvm.ViewModelLocator.AutoWireViewModel'. [Line: 0 Position: 0]
-----------------------------------------------
At the time of the exception, the container was:

  Resolving X.Views.ShellPage,(none)
  Calling constructor X.Views.ShellPage()
   at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type, Object, String, IEnumerable`1) + 0x146
   at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type, String, IEnumerable`1) + 0xf
   at Microsoft.Practices.Unity.UnityContainerExtensions.Resolve[T](IUnityContainer, ResolverOverride[]) + 0x31
   at X.App.CreateShell(Frame) + 0x30
   at Prism.Windows.PrismApplication.<InitializeShell>d__52.MoveNext() + 0xc4
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x1c
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task) + 0x60
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task) + 0x36
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task) + 0x16
   at System.Runtime.CompilerServices.TaskAwaiter.GetResult() + 0x9
   at Prism.Windows.PrismApplication.<OnLaunched>d__53.MoveNext() + 0x49
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x1c
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<>c.<ThrowAsync>b__7_0(Object) + 0x19
   at System.Action`1.Invoke(T) + 0x1e
   at System.Threading.WinRTSynchronizationContext.Invoker.InvokeCore() + 0x2b
<unknown>The text associated with this error code could not be found.

Failed to assign to property 'Prism.Windows.Mvvm.ViewModelLocator.AutoWireViewModel'. [Line: 0 Position: 0]   at System.Runtime.InteropServices.McgMarshal.ThrowOnExternalCallFailed(Int32, RuntimeTypeHandle) + 0x1d
   at __Interop.ComCallHelpers.Call(__ComObject, RuntimeTypeHandle, Int32, Void*, Void*, Int32) + 0x95
   at Windows.UI.Xaml.IApplicationStatics__Impl.Stubs.LoadComponent(__ComObject, Object, Uri, ComponentResourceLocation) + 0x50
   at X.Views.ShellPage.InitializeComponent() + 0x4d
   at X.Views.ShellPage..ctor() + 0x13
   at _$ILCT$.$ILT$ReflectionDynamicInvoke$.InvokeRetV(Object, IntPtr, InvokeUtils.ArgSetupState&, Boolean) + 0x2f
   at System.InvokeUtils.CalliIntrinsics.Call(IntPtr, Object, IntPtr, InvokeUtils.ArgSetupState&, Boolean) + 0x2c
   at System.InvokeUtils.CallDynamicInvokeMethod(Object, IntPtr, Object, IntPtr, IntPtr, Object, Object[], BinderBundle, Boolean, Boolean, Boolean) + 0x119
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() + 0x1c
   at System.Linq.Expressions.Interpreter.ExceptionHelpers.UnwrapAndRethrow(TargetInvocationException) + 0x14
   at System.Linq.Expressions.Interpreter.NewInstruction.Run(InterpretedFrame) + 0x8b
   at System.Linq.Expressions.Interpreter.Interpreter.Run(InterpretedFrame) + 0x25
   at System.Linq.Expressions.Interpreter.LightLambda.Run(Object[]) + 0x96
   at System.Func`2.Invoke(T) + 0x23
   at System.Runtime.CompilerServices.ConditionalWeakTable`2.CreateValueCallback.InvokeObjectArrayThunk(TKey) + 0x44
   at Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.<>c__DisplayClass1.<GetBuildMethod>b__0(IBuilderContext) + 0x31
   at System.Diagnostics.DiagnosticSourceEventSource.CallbackObserver`1.OnNext(T) + 0x1e
   at Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(IBuilderContext) + 0xd3
   at Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(IBuilderContext) + 0x11b
   at Microsoft.Practices.Unity.UnityContainer.DoBuildUp(Type, Object, String, IEnumerable`1) + 0x109
<unknown>"

 

As the message shows, something went wrong with Prism. We were using an older version of Prism 6.3 for UWP.

After building the package with VS2019, we were able to run the application with no issues.


No we are looking to move away from Prism to have something more sustainable. However, we would still like to know what we could do to avoid future situations where the different build environments will allow our app to run or not?


Or was this a bug in VS2017?


Any help would be appreciated

1 Reply
Microsoft Verified Best Answer

Hi @eliasaj,

 

Based on the information you've provided the issue could be related to the target / min version is for the project.

 

- Roy