[英]How to do tutorial in app and launch it just on first start up in Xamarin?
[英]How to launch app at start as administrator?
我的问题很简单。 我找不到两个问题的解决方案。 我的问题是在启动时在没有管理员许可的情况下启动程序。 我只想获取安装程序的管理员权限。 我正在使用regedit在启动程序时启动我的程序,而没有管理员权限。 如果我尝试授予应用清单的管理员权限,则程序不会在启动时启动。 我该如何解决呢? 另外程序需要一个GUI,所以我不能使用服务。 谢谢您的帮助。
有我的启动代码
private void SetStartup()
{
RegistryKey rk = Registry.CurrentUser.OpenSubKey
("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
if (chkStartUp.Checked)
{
rk.SetValue("_connectorEthernet", Environment.CurrentDirectory + @"\_connectorEthernet");
WriteToSettingFile("true");
}
else
{
rk.DeleteValue("_connectorEthernet", false);
WriteToSettingFile("false");
}
}
好吧,我想我解决了。 首先我做了
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
对于程序在启动时启动。 如果不这样做,该程序将不会启动。
之后,我在解决方案资源管理器窗口中使用settings.setting。
这是为了获取设置
chkStartUp.Checked = Properties.Settings.Default.chk;
这是用于更改和保存设置
Properties.Settings.Default.chk = true;
Properties.Settings.Default.Save();
最后,此代码用于以管理员身份运行cmd并获得响应。
var proc = new Process
{
StartInfo = new ProcessStartInfo
{
FileName = "netsh.exe",
Arguments = "lan reconnect",
UseShellExecute = false,
RedirectStandardOutput = true,
CreateNoWindow = true,
Verb = "runas"
}
};
proc.Start();
string line = proc.StandardOutput.ReadToEnd();
MessageBox.Show(line);
这就是我解决问题的方式。 希望对其他人有帮助。 如果您还有其他想法,请与我联系。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.