.NET实现:将EXE设置开机自动启动

代码如下:

private void btnSetOk_Click(object sender, EventArgs e)

{

RegCompStartRun(true, txtFullPath.Text.Trim());

}

private void btnCancel_Click(object sender, EventArgs e)

{

RegCompStartRun(false, txtFullPath.Text.Trim());

}

private void RegCompStartRun(bool cmd, string argPath)

{

string starupPath = argPath;

if (string.IsNullOrEmpty(argPath))

{

//获取当前可执行程序的全路径

starupPath = Application.ExecutablePath;

}

//表示Window注册表中项级节点,读取 Windows 注册表基项HKEY_LOCAL_MACHINE

Microsoft.Win32.RegistryKey loca = Microsoft.Win32.Registry.LocalMachine;

Microsoft.Win32.RegistryKey run = loca.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");

try

{

//SetValue:存储值的名称

if (cmd)

{

run.SetValue("AutoStartupTestWinFormApp", starupPath);//加入注册,参数一为注册节点名称(随意)

lblDisplay.Text = "设置成功!";

}

else

{

run.DeleteValue("AutoStartupTestWinFormApp", false);//删除该注册节点

lblDisplay.Text = "取消设置成功!";

}

loca.Close();

}

catch (Exception ee)

{

MessageBox.Show(ee.Message.ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);

}

}

注意事项:

如果设置后,重命名该exe文件,则注销、重启后重新登录,设置的开机启动项不会启动,

如果改回原来的名字,则再次注销或重启,登录后会自动启动该设置的exe文件

(0)

相关推荐

  • ASP.NET 缓存分析和实践浅析提高运行效率

    向数据层.业务逻辑层.UI 或输出层添加缓存支持.内存现在非常便宜 - 因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高. 缓存可以掩盖许多过失 缓存是一种无需大量时间和分析就可以获得"足够良好的"性能的方法. 这里再次强调,内存现在非常便宜,因此,如果您能通过将输出缓存 30 秒,而不是花上一整天甚至一周的时间尝试优化代码或数据库就可以获得所需的性能,您肯定会选择缓存解决方案(假设可以接受 30 秒的旧数据).缓存正是那些利用 20% 付出获得 80% 回报的特

  • .NET调用控制台下生成的exe文件,传参及获取返回参数的思路及代码

    最近客户要求把一个树型目录导出成文件夹套文件夹的结构,并提供下载功能,刚开始感觉功能比较容易实现就在最短的时间把基本功能搞定,当发布到服务器上之后发现直接在本应用程序中导出目录(下带ntko文档及附件)再进行压缩,程序直接卡死了!后来就想到了要做一window服务,只是客户给的时间太短,没办法先写一控制台程序生成一个exe文件,然后再调用这个exe文件,这样就可以缓解本程序压力了! 下面写一个测试项目 在调用exe端传过去一个要压缩的文件夹的路径,然后在控制台下获取该路径进行压缩,压缩完成之后返

  • 运行asp.net程序 报错:磁盘空间不足

    一看,C盘只有不到2M可用空间,一查原因,sqlserver安装路径下的log目录文件占了好大,5G多, 于是上网搜了下,解决了: 把与sqlserver有关的服务停掉,log目录下.1/.2/.3的类型文件都可以直接删除了

  • 在.net应用程序中运行其它EXE文件的方法

    本文实例讲述了在.net应用程序中运行其它EXE文件的方法.分享给大家供大家参考.具体实现方法如下: Process proc = new Process(); proc.StartInfo.FileName = @"D:\Program Files\Foxmail\Foxmail.exe"; //可以用绝对路径 proc.StartInfo.Arguments = ""; proc.Start(); 希望本文所述对大家的C#程序设计有所帮助.

  • asp.net运行原理 详解

    主要类: System.Web.HttpRuntime System.Web.HttpApplicationFactory System.Web.HttpApplication System.Web.Compilation.BuildManager System.Web.Compilation.ApplicationBuildProvider System.Web.Compilation.BuildProvidersCompiler System.Web.UI.PageHandlerFactor

  • Asp.net在IIS上运行不了的解决方法

    1..NET 安装的顺序应该是先装IIS,再装VS.NET,如果次序反了,或者IIS重装了,就需要使用aspnet_regiis.exe -i来重新安装IIS Mapping(主要用于aspx, asmx等文 件的Extention的匹配).在C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705目录下,运行下面的命令:aspnet_regiis.exe -i. 2.重设ASP.NET的密码,然后在下面的目录中找到Machine.config文件:%System

  • ASP.NET也像WinForm程序一样运行的实现方法

    由于现在会使用WinForm的人是越来越少了,可能有时候做点小东西就只好用ASP.NET去完成了(喜欢控制台的朋友请不要顶针),如果是这样,悲剧就发生了:一个小工具(或者小的演示项目),发给朋友去用,总不至于让人家也装个IIS或者VS20XX吧?如果没有这二样,这种小工具还真不方便运行.怎么办?做过ASP.NET开发的人都知道:网站通常要布署到IIS上才能直接运行,当然也不排除你用VS打开项目并使用VS自带的WebDev.WebServer.exe来启动程序.这种方式难免有不方便的时候. 我平时

  • .NET实现:将EXE设置开机自动启动

    复制代码 代码如下: private void btnSetOk_Click(object sender, EventArgs e) { RegCompStartRun(true, txtFullPath.Text.Trim()); } private void btnCancel_Click(object sender, EventArgs e) { RegCompStartRun(false, txtFullPath.Text.Trim()); } private void RegCompS

  • Android开发之设置开机自动启动的几种方法

    Android开发之设置开机自动启动的几种方法 方法一: <!-- 开机启动 --> <receiver android:name=".AutoStartReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED"/> <category android:name="android.inten

  • delphi设置开机自动启动函数具体实现

    有些程序要设置为开机启动,所以自己写了个函数方便以后使用,供大家参考 复制代码 代码如下: procedure TMainForm.SetAutoRun(ok: boolean); var Reg:TRegistry; //首先定义一个TRegistry类型的变量Reg begin Reg:=TRegistry.Create; try //创建一个新键 Reg.RootKey:=HKEY_LOCAL_MACHINE; //将根键设置为HKEY_LOCAL_MACHINE Reg.OpenKey(

  • Nginx设置成服务并开机自动启动的配置

    在/etc/init.d下创建文件nginx [root@localhost ~]# vim /etc/init.d/nginx 其内容参考nginx官方文档 需要注意的配置: nginx="/usr/local/nginx/sbin/nginx" //修改成nginx执行程序的路径. NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" //修改成nginx.conf文件的路径. 保存后设置文件的执行权限 [root

  • ubuntu中编写shell脚本开机自动启动(推荐)

    编写脚本是为了不用手动去开启各种服务(也是为了偷懒哈哈) 1.进入终端输入 创建一个后缀为.sh的脚本文件 touch test.sh 编辑脚本 vim test.sh test.sh编写脚本内容  2.编写test.sh脚本 #!/bin/bash ### BEGIN INIT INFO # Provides: test # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Star

  • python打包exe开机自动启动的实例(windows)

    一.背景 简单的写个.exe程序,没必要去学习mfc.c++等,可以学习python.python可以轻易的调用windows的api,轻松的实现你想干的事.下面就是实现打包的exe文件开机自动运行. 二.实现 #!/usr/bin/python # -*- coding: UTF-8 -*- import win32api import win32con class AutoRun(): def __init__(self): name = 'translate' # 要添加的项值名称 pat

  • C#实现开机自动启动设置代码分享

    /// <summary> /// 设置程序开机启动 /// 或取消开机启动 /// </summary> /// <param name="started">设置开机启动,或者取消开机启动</param> /// <param name="exeName">注册表中程序的名字</param> /// <param name="path">开机启动的程序路径<

  • c++ 让程序开机自动启动的方法

    当我们在window下编写自己的程序时,也可以让自己编写的程序在电脑开机时自动运行,这主要是修改windows里的注册表信息,所有开机自动启动的程序的一些信息都放在注册表中的某一文件夹下.我们只需在特定的文件夹下写入我们的程序信息即可. 关于注册表 我们可以在键盘上同时按下 win+r 键,在运行串口中输regedit 回车即可看到注册表(可以理解为一个大树,记录着系统中的信息),我们点击左边文件夹,点击顺序为:Software\\Microsoft\\Windows\\CurrentVersi

  • cloudera manager 设置开机自启的方法

    最近在使用Cloudera manager管理hadoop集群.为了方便自动化管理,需要添加开机自动启动.从网上搜了一下,在一个安装教程中找到了一个方法.这里我用的是cloudera-manager-el5-cm5.3.2_x86_64.tar.gz进行的安装.所以默认是在/opt目录下面的. 解决方案: step1:复制启动脚本 将/opt/cm-5.3.2/etc/init.d/目录下的cloudera-scm-server服务器启动脚本和cloudera-scm-agent代理服务启动脚本

  • linux jexus服务设置开机启动

    本文为大家分享jexus服务设置开机启动的具体代码,供大家参考,具体内容如下 linux的服务开机设置一般在 /etc/init.d/里 而jexus的默认安装目录在 /usr/jexus里 启动文件为 jws 参数 有start stop restart 这里贡献一个刚写好的jexus的开启启动脚本 #!/bin/bash ### BEGIN INIT INFO # # Provides: jws # Required-Start: $local_fs $remote_fs # Require

随机推荐