RonenNess / GeonBit.UI

UI system for MonoGame projects.
MIT License
467 stars 63 forks source link

DataTypes.dll reference crashes Content Pipeline tool #98

Closed rmhopkins closed 5 years ago

rmhopkins commented 5 years ago

Not sure if this is a GeonBit.UI issue or a Monogame issue.

When trying to add the a reference to DataTypes.dll to the Content Pipeline tool, it crashes the tool and fails to add the reference.

Steps to reproduce:

  1. Open the Pipeline tool
  2. Click Content and scroll down to references
  3. Click References entry and in the new window click Add
  4. Browse to the location of DataTypes.dll, select it and click Open.
  5. Observe that it has been added to the references list.
  6. Click OK. Tool crashes with the following error:

System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information. at System.Reflection.RuntimeModule.GetTypes(RuntimeModule module) at System.Reflection.Assembly.GetTypes() at MonoGame.Tools.Pipeline.PipelineTypes.ResolveAssemblies(IEnumerable`1 assemblyPaths) at MonoGame.Tools.Pipeline.PipelineTypes.Load(PipelineProject project) at MonoGame.Tools.Pipeline.PipelineController.ResolveTypes() at MonoGame.Tools.Pipeline.PipelineController.OnReferencesModified() at MonoGame.Tools.Pipeline.CellRefs.Edit(PixelLayout control) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.DispatcherOperation.InvokeImpl() at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state) at System.Windows.Threading.DispatcherOperation.Invoke() at System.Windows.Threading.Dispatcher.ProcessQueue() at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) at System.Windows.Application.RunDispatcher(Object ignore) at System.Windows.Application.RunInternal(Window window) at MonoGame.Tools.Pipeline.Program.Main(String[] args)

Version info:

Visual Studio Enterprise 15.9.3 Monogame 3.6 GeonBit.UI 3.3.0 (added by Nuget)

I tried adding the dll from the lib folder that came with the nuget and also tried downloading the github source and building it from the project. Both resulted in a similar error.

RonenNess commented 5 years ago

Just to be sure - are you adding via the content manager UI tool, like in this pic:

untitled

If so its a bug with MonoGame, out of curiosity I just tried adding an empty file with .dll extension and it worked, so it doesn't do any validations or anything that could be related to GeonBit.UI.

I suggest asking here: http://community.monogame.net/

And if your path contains spaces you can try just as a test to use a path with no spaces or add a different dll, sometimes paths with spaces cause problems in random stuff..

If you think it is in GeonBit please reopen issue.

Thanks :)