From c3aa874d24c380305f7c61b8118ad942574c3aa3 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Fri, 20 Aug 2010 16:02:52 +0000 Subject: [PATCH] SharpDevelop can now find the location of Sandcastle Help File Builder version 1.9.1.0 git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/3.0@6425 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Src/Commands/ProjectMenuCommands.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs b/src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs index a464a5da5e..6ed3018855 100644 --- a/src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs +++ b/src/Main/Base/Project/Src/Commands/ProjectMenuCommands.cs @@ -49,9 +49,25 @@ namespace ICSharpCode.SharpDevelop.Project.Commands public class GenerateProjectDocumentation : AbstractMenuCommand { + static string[] registryKeys = new string[] { + @"HKEY_CLASSES_ROOT\Sandcastle Help File Builder Project\shell\open\command", + @"HKEY_CLASSES_ROOT\SandcastleBuilder.shfbproj\shell\open\command" + }; + static string FindSHFB() { - string command = Registry.GetValue(@"HKEY_CLASSES_ROOT\Sandcastle Help File Builder Project\shell\open\command", null, string.Empty) as string; + foreach (string registryKey in registryKeys) { + string fileName = FindSHFB(registryKey); + if (fileName != null) { + return fileName; + } + } + return null; + } + + static string FindSHFB(string registryKey) + { + string command = Registry.GetValue(registryKey, null, string.Empty) as string; return ExtractExecutableFromCommand(command); }