From 2c3006def47797bde382a6537f2fc422d154ca79 Mon Sep 17 00:00:00 2001 From: alcexhim Date: Tue, 10 Jun 2014 09:47:39 -0400 Subject: [PATCH] Use empty project type GUID if project type not found (this should never happen) and create folder for solution --- .../VisualStudio/VisualStudioSolutionDataFormat.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/CSharp/Plugins/UniversalEditor.Essential/DataFormats/Solution/Microsoft/VisualStudio/VisualStudioSolutionDataFormat.cs b/CSharp/Plugins/UniversalEditor.Essential/DataFormats/Solution/Microsoft/VisualStudio/VisualStudioSolutionDataFormat.cs index 622af985..da11b1ba 100644 --- a/CSharp/Plugins/UniversalEditor.Essential/DataFormats/Solution/Microsoft/VisualStudio/VisualStudioSolutionDataFormat.cs +++ b/CSharp/Plugins/UniversalEditor.Essential/DataFormats/Solution/Microsoft/VisualStudio/VisualStudioSolutionDataFormat.cs @@ -85,7 +85,9 @@ namespace UniversalEditor.DataFormats.Solution.Microsoft.VisualStudio else { */ - writer.WriteLine("Project(\"" + project.ProjectType.ID.ToString("B") + "\") = \"" + project.Title + "\", \"" + project.RelativeFileName + "\", \"" + project.ID.ToString("B") + "\""); + Guid projectTypeGuid = Guid.Empty; + if (project.ProjectType != null) projectTypeGuid = project.ProjectType.ID; + writer.WriteLine("Project(\"" + projectTypeGuid.ToString("B") + "\") = \"" + project.Title + "\", \"" + project.RelativeFileName + "\", \"" + project.ID.ToString("B") + "\""); writer.WriteLine("EndProject"); /* } @@ -93,6 +95,11 @@ namespace UniversalEditor.DataFormats.Solution.Microsoft.VisualStudio SolutionObjectModel solproj = new SolutionObjectModel(); solproj.Projects.Add(project); + + if (!System.IO.Directory.Exists(soldir)) + { + System.IO.Directory.CreateDirectory(soldir); + } Document.Save(solproj, new VisualStudioProjectDataFormat(), new FileAccessor(soldir + "/" + project.Title + "/" + project.Title + ".ueproj"), true); }