我用C#写的一个Windows应用程序怎样让操作系统在启动是就启动我的程序?

 我来答
定复2d
2009-03-16 · TA获得超过3196个赞
知道大有可为答主
回答量:2052
采纳率:0%
帮助的人:1918万
展开全部
/// <summary>
/// 保存开启启动设置的方法
/// </summary>
private void DoAutoRunXML()
{
XmlNode root = clsXMl.GetRootNode();
foreach (XmlNode node in root.ChildNodes)
{
if (node.Name == "AutoRun")
{
if (node.InnerText == "no")
{
node.InnerText = "yes";//重写XML
ToolStripMenuItemAutoRun.Checked = true;
RunWhenStart(true, Application.ProductName, Application.StartupPath + "\\" + Application.ProductName + ".exe");
}
else if (node.InnerText == "yes")
{
node.InnerText = "no";
ToolStripMenuItemAutoRun.Checked = false;
RunWhenStart(false, Application.ProductName, Application.StartupPath + "\\" + Application.ProductName + ".exe");

}
}
}

clsXMl.xmlSave();

}

/// <summary>
/// 修改 开机启动 注册表的方法
/// </summary>
/// <param name="bFlag"> 是否开机启动</param>
/// <param name="strName">启动值的名称</param>
/// <param name="strPath">启动程序的路径</param>
private void RunWhenStart(bool bFlag, string strName, string strPath)
{
Microsoft.Win32.RegistryKey rootKey = Microsoft.Win32.Registry.LocalMachine;//本地计算机数据的配置
Microsoft.Win32.RegistryKey runKey = rootKey.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");

if (bFlag == true)//创建开机启动
{
try
{
runKey.SetValue(strName, strPath);
rootKey.Close();// 刷新 关闭 保存修改
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, " 提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

}
else
{
try
{
runKey.DeleteValue(strName);
rootKey.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, " 提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
GC.Collect();
}

参考资料: http://hi.baidu.com/bestgo/blog/item/bfbb8ef3d83096cf0b46e0d1.html

百度网友365925a
2009-03-16 · TA获得超过376个赞
知道小有建树答主
回答量:638
采纳率:0%
帮助的人:464万
展开全部
System.Diagnostics.Process proc = System.Diagnostics.Process.Start(@"C:\WINDOWS\NOTEPAD.EXE");
proc.WaitForExit();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-03-16
展开全部
服了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式