Bug 1044 - Path issues with MonoDevelop on Windows 7 x64 - The path is not of a legal form.
Summary: Path issues with MonoDevelop on Windows 7 x64 - The path is not of a legal form.
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: General ()
Version: 2.6
Hardware: PC Windows
: --- normal
Target Milestone: ---
Assignee: Bugzilla
: 1037 ()
Depends on:
Reported: 2011-09-25 17:41 UTC by Chris Hardy [MSFT]
Modified: 2011-10-06 19:43 UTC (History)
3 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Chris Hardy [MSFT] 2011-09-25 17:41:44 UTC
Make it usable on my Windows 7 x64 machine. I cant open files or create projects, I keep getting unable to do things exceptions like this:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentException: The path is not of a legal form.
at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.Path.GetFullPath(String path)
at MonoDevelop.Ide.Gui.Components.FileBrowser.set_CurrentDir(String value)
at MonoDevelop.Ide.Gui.Components.FileBrowser..ctor()
at MonoDevelop.Ide.Gui.Pads.FileScout..ctor()
--- End of inner exception stack trace ---
at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandleInternal& ctor, Boolean& bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache)
at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean skipCheckThis, Boolean fillCache)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at Mono.Addins.RuntimeAddin.CreateInstance(String typeName, Boolean throwIfNotFound)
at MonoDevelop.Ide.Codons.PadCodon.CreatePad()
at MonoDevelop.Ide.Codons.PadCodon.InitializePadContent(IPadWindow window)
at MonoDevelop.Ide.Gui.PadWindow.CreateContent()
at MonoDevelop.Ide.Gui.PadWindow.get_Content()
at MonoDevelop.Ide.Gui.Pad.get_Content()
at MonoDevelop.Ide.Gui.Workbench.GetPad[T]()
at MonoDevelop.SourceEditor.SourceEditorView..ctor()
at MonoDevelop.SourceEditor.SourceEditorDisplayBinding.CreateContent(FilePath fileName, String mimeType, Project ownerProject)
at MonoDevelop.Ide.Gui.LoadFileWrapper.Invoke(String fileName)
Comment 2 Mikayla Hutchinson [MSFT] 2011-09-26 09:30:09 UTC
Fixed in master. The FileScout has been removed. It's not needed in an IDE - it was originally implemented as a workaround before SharpDevelop had working  project supported. In addition, it was barely maintained and couldn't really compete with the OS file browsers, and no-one I asked had ever found it useful.
Comment 3 Mikayla Hutchinson [MSFT] 2011-09-26 09:50:13 UTC
You can work around this by closing the file pad.
Comment 4 Mikayla Hutchinson [MSFT] 2011-09-28 07:11:51 UTC
I did a bit of digging and found out that the workaround won't work due to this bug: http://bugzilla.xamarin.com/show_bug.cgi?id=1095
Comment 5 Mikayla Hutchinson [MSFT] 2011-09-28 07:21:05 UTC
I investigated further, and from the stack trace it seems that the code that is failing could be reduced to:
System.IO.Path.GetFullPath (Environment.GetFolderPath (Environment.SpecialFolder.Personal))

It shouldn't be possible for this to fail unless something is seriously wrong with the environment.
Comment 6 Mikayla Hutchinson [MSFT] 2011-09-28 11:22:06 UTC
*** Bug 1037 has been marked as a duplicate of this bug. ***
Comment 7 Mikayla Hutchinson [MSFT] 2011-09-28 11:22:45 UTC
This appears to be related to some kind of split-drive SSD configuration.