我用C#写了一个程序,如何能够开机的时候自动运行.急!!!

解决方案 »

  1.   

    可以加到注册表里
    也可以做成windows服务
      

  2.   

     添加到启动项
     reg = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
      

  3.   

    分为两种
    第一是简单的方式 直接在程序里面写进去  http://blog.csdn.net/fengyarongaa/article/details/6537548//此方法把启动项加载到注册表中
    //获得应用程序路径
    string strAssName = Application.StartupPath + @"/" + Application.ProductName + @".exe";
    //获得应用程序名
    string ShortFileName = Application.ProductName;
    RegistryKey rgkRun = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft//Windows//CurrentVersion//Run", true);
    if (rgkRun == null)
    {
        rgkRun = Registry.LocalMachine.CreateSubKey("SOFTWARE//Microsoft//Windows//CurrentVersion//Run");
    }
    rgkRun.SetValue(ShortFileName, strAssName);//此删除注册表中启动项
    //获得应用程序名
    string ShortFileName = Application.ProductName;
    RegistryKey rgkRun = Registry.LocalMachine.OpenSubKey("SOFTWARE//Microsoft//Windows//CurrentVersion//Run", true);
    if (rgkRun == null)
    {
        rgkRun = Registry.LocalMachine.CreateSubKey("SOFTWARE//Microsoft//Windows//CurrentVersion//Run");
    }
    rgkRun.DeleteValue(ShortFileName, false);第二是做成windows services 。这样就能检查和守护启动这个程序
    http://blog.csdn.net/fengyarongaa/article/details/6346925参见我的博客
      

  4.   

    using System.Security.Permissions;
    [assembly: RegistryPermissionAttribute(SecurityAction.RequestMinimum, ViewAndModify="HKEY_CURRENT_USER")]Registry.LocalMachine.CreateSubKey(@"SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\RUN").SetValue(name, value, valueKind)
      

  5.   

    有很多种方法,注册表Run等键值,服务,添加到任务与计划里(推荐)