简而言之,我正在为每个Visual Studio 2012 Express版本的InstallDir密钥寻找可执行文件名和注册表路径。
它们是(减去RC标签)
注册表路径将位于HKLM配置单元中,如下所示:
{HKLM} \ SOFTWARE \微软\ ???? \ 11.0
如果可以使用以前版本的VS Express,则每个版本的可执行文件名称可能不同。
为了完整起见,请查看2002年以前的每个Visual Studio .Net版本的edition number
,version
,solution version
和HKLM relative registry path
2012。
public class VSType
{
public VSType(){}
public VSType(string edition, string version, string solutionVersion, string hklmRegistryPath) {/*...*/}
public static VSType VS2002 = new VSType("2002", "7.0", "7.00", "SOFTWARE\\Microsoft\\VisualStudio\\7.0");
public static VSType VS2003 = new VSType("2003", "7.10", "8.00", "SOFTWARE\\Microsoft\\VisualStudio\\7.1");
public static VSType VS2005 = new VSType("2005", "8.0", "9.00", "SOFTWARE\\Microsoft\\VisualStudio\\8.0");
public static VSType VS2008 = new VSType("2008", "9.0", "10.00", "SOFTWARE\\Microsoft\\VisualStudio\\9.0");
public static VSType VS2010 = new VSType("2010", "10.0", "11.00", "SOFTWARE\\Microsoft\\VisualStudio\\10.0");
public static VSType VS2012 = new VSType("2012", "11.0", "12.00", "SOFTWARE\\Microsoft\\VisualStudio\\11.0");
}
public class VSExpressType : VSType
{
public VSExpressType(VSType vsType, string name, string exeName, string hklmRegistryPath) {/*...*/}
// 2005 ***********************************************************************
public static VSExpressType VSExpress2005CSharp = new VSExpressType(VS2005,
"Microsoft Visual C# 2005 Express Edition",
"VCSExpress.exe",
"SOFTWARE\\Microsoft\\VCSExpress\\8.0");
public static VSExpressType VSExpress2005VB = new VSExpressType(VS2005,
"Microsoft Visual Basic 2005 Express Edition",
"vbexpress.exe",
"SOFTWARE\\Microsoft\\VBExpress\\8.0");
public static VSExpressType VSExpress2005Web = new VSExpressType(VS2005,
"Microsoft Visual Web Developer 2005 Express Edition",
"VWDExpress.exe",
"SOFTWARE\\Microsoft\\VWDExpress\\8.0");
// 2008 ***********************************************************************
public static VSExpressType VSExpress2008CSharp = new VSExpressType(VS2008,
"Microsoft Visual C# 2008 Express Edition",
"VCSExpress.exe",
"SOFTWARE\\Microsoft\\VCSExpress\\9.0");
public static VSExpressType VSExpress2008VB = new VSExpressType(VS2008,
"Microsoft Visual Basic 2008 Express Edition",
"vbexpress.exe",
"SOFTWARE\\Microsoft\\VBExpress\\9.0");
public static VSExpressType VSExpress2008Web = new VSExpressType(VS2008,
"Microsoft Visual Web Developer 2008 Express Edition",
"VWDExpress.exe",
"SOFTWARE\\Microsoft\\VWDExpress\\9.0");
// 2010 ***********************************************************************
public static VSExpressType VSExpress2010CSharp = new VSExpressType(VS2010,
"Microsoft Visual C# 2010 Express Edition",
"VCSExpress.exe",
"SOFTWARE\\Microsoft\\VCSExpress\\10.0");
public static VSExpressType VSExpress2010VB = new VSExpressType(VS2010,
"Microsoft Visual Basic 2010 Express Edition",
"vbexpress.exe",
"SOFTWARE\\Microsoft\\VBExpress\\10.0");
public static VSExpressType VSExpress2010Web = new VSExpressType(VS2010,
"Microsoft Visual Web Developer 2010 Express Edition",
"VWDExpress.exe",
"SOFTWARE\\Microsoft\\VWDExpress\\10.0");
// 2012 ***********************************************************************
public static VSExpressType VSExpress2012WIn8 = new VSExpressType(VS2012,
"Visual Studio Express 2012 for Windows 8",
"EXENAME",
"SOFTWARE\\Microsoft\\REGISTRYPATH");
public static VSExpressType VSExpress2012Web = new VSExpressType(VS2012,
"Microsoft Visual Studio Express 2012 for Web",
"EXENAME",
"SOFTWARE\\Microsoft\\REGISTRYPATH");
public static VSExpressType VSExpressTFS2012 = new VSExpressType(VS2012,
"Visual Studio Team Foundation Server Express 2012",
"EXENAME",
"SOFTWARE\\Microsoft\\REGISTRYPATH");
}
答案 0 :(得分:4)
适用于Windows 8的Visual Studio Express 2012
VSWinExpress.exe
{HKLM}\\SOFTWARE\\Microsoft\\VSWinExpress\\11.0
Microsoft Visual Studio Express 2012 for Web
VWDExpress.exe
{HKLM}\\SOFTWARE\\Microsoft\\VWDExpress\\11.0
Visual Studio Team Foundation Server Express 2012
TfsMgmt.exe
{HKLM}\\SOFTWARE\\Microsoft\\TeamFoundationServer\\11.0
请注意,TFS \ 11路径下没有InstallDir
。而是有一个InstalledComponents
节点,其中包含已安装的竞争者列表以及每个节点的InstallPath密钥。
另请注意,在64位PC上,密钥将位于{HKLM}\\SOFTWARE\\Wow6432Node\\
节点下。
答案 1 :(得分:0)