You are viewing a plain text version of this content. The canonical link for it is here.
Posted to npanday-commits@incubator.apache.org by lc...@apache.org on 2011/05/03 07:48:05 UTC
svn commit: r1098950 -
/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs
Author: lcorneliussen
Date: Tue May 3 07:48:05 2011
New Revision: 1098950
URL: http://svn.apache.org/viewvc?rev=1098950&view=rev
Log:
[NPANDAY-412] Find 2.0 SDK by path, if it is not specified in the registry
Modified:
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs
Modified: incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs
URL: http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs?rev=1098950&r1=1098949&r2=1098950&view=diff
==============================================================================
--- incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs (original)
+++ incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Settings/src/main/csharp/NPanday/Plugin/Settings/DotnetSdkLocator.cs Tue May 3 07:48:05 2011
@@ -18,6 +18,8 @@
//
using Microsoft.Win32;
+using System;
+using System.IO;
namespace NPanday.Plugin.Settings
{
@@ -28,6 +30,17 @@ namespace NPanday.Plugin.Settings
RegistryKey Microsoft_SDKs_Windows_70 = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0");
RegistryKey Microsoft_SDKs_Windows_70a = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Microsoft SDKs\Windows\v7.0A");
+ string ProgramFilesX86(string subfolders){
+ string programFiles = Environment.GetEnvironmentVariable("PROGRAMFILES(X86)")
+ ?? Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
+ return Path.Combine(programFiles, subfolders);
+ }
+
+ string ProgramFiles(string subfolders){
+ string programFiles = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
+ return Path.Combine(programFiles, subfolders);
+ }
+
public string Find1_1()
{
return (string)Microsoft_NETFramework.GetValue("sdkInstallRootv1.1");
@@ -37,7 +50,11 @@ namespace NPanday.Plugin.Settings
{
return PathUtil.FirstExisting(
registryFind(Microsoft_NETFramework, "sdkInstallRootv2.0"),
- registryFind(Microsoft_SDKs_NETFramework, "v2.0", "InstallationFolder")
+ registryFind(Microsoft_SDKs_NETFramework, "v2.0", "InstallationFolder"),
+ ProgramFilesX86(@"Microsoft.NET\SDK\v2.0"),
+ ProgramFilesX86(@"Microsoft.NET\SDK\v2.0 64bit"),
+ ProgramFilesX86(@"Microsoft SDKs\Windows\v6.0A\bin"),
+ ProgramFiles(@"Microsoft SDKs\Windows\v6.0A\bin")
);
}