introduced custom actions file to execute devenv.exe /setup as admin
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
using System;
|
||||
using System.Configuration.Install;
|
||||
using System.Diagnostics;
|
||||
using System.Windows.Forms;
|
||||
using Microsoft.Win32;
|
||||
|
||||
namespace ReswCodeGen.CustomActions
|
||||
{
|
||||
public class InstallerClass : Installer
|
||||
{
|
||||
protected override void OnAfterInstall(System.Collections.IDictionary savedState)
|
||||
{
|
||||
SetupVisualStudio();
|
||||
}
|
||||
|
||||
public static void SetupVisualStudio()
|
||||
{
|
||||
string devenvPath;
|
||||
using (var key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\Microsoft\VisualStudio\11.0"))
|
||||
{
|
||||
if (key == null)
|
||||
{
|
||||
MessageBox.Show("Unable to locate devenv.exe", "Error");
|
||||
return;
|
||||
}
|
||||
devenvPath = string.Format("{0}devenv.exe", key.GetValue("InstallDir", string.Empty));
|
||||
}
|
||||
|
||||
var proc = new ProcessStartInfo
|
||||
{
|
||||
UseShellExecute = true,
|
||||
WorkingDirectory = Environment.CurrentDirectory,
|
||||
FileName = devenvPath,
|
||||
Arguments = "/setup",
|
||||
Verb = "runas"
|
||||
};
|
||||
try
|
||||
{
|
||||
var process = Process.Start(proc);
|
||||
process.WaitForExit();
|
||||
}
|
||||
catch
|
||||
{
|
||||
MessageBox.Show("Unable to execute devenv.exe /setup", "Error");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user