C# 计算机启动时自动运行程序

C# 计算机启动时自动运行程序,c#,C#,我设计了一个应用程序,当用户打开电脑时,它会向用户致意。该程序在我的电脑上运行良好,但当我在我兄弟的电脑上传输该程序的.exe文件时,它就不工作了,这意味着“电脑启动时它不会自动工作”…我如何克服这个问题??这是我的密码 注意:如果我手动执行,程序运行良好,但我希望它能自动运行 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.D

我设计了一个应用程序,当用户打开电脑时,它会向用户致意。该程序在我的电脑上运行良好,但当我在我兄弟的电脑上传输该程序的.exe文件时,它就不工作了,这意味着“电脑启动时它不会自动工作”…我如何克服这个问题??这是我的密码


注意:如果我手动执行,程序运行良好,但我希望它能自动运行

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
using System.IO;

namespace helloMSG
{
    public partial class Form1 : Form
{
    RegistryKey reg = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
    public Form1()
    {
        InitializeComponent();
        reg.SetValue("My app", Application.ExecutablePath.ToString());
    }

    private void Form1_Load(object sender, EventArgs e)
    {


    }
}
}
`

目标计算机应符合要求,至少应安装正确的.net版本和其他依赖项(如果有)。此外,由于您正在写入注册表,可能需要管理员权限。
还有一件事。你真的不需要winforms应用程序。一个人应该做的事

如果希望程序在Windows启动后启动,请将可执行文件复制到启动目录:

  • 单击开始按钮的开始按钮图片,单击所有程序,右键单击启动文件夹,然后单击打开
  • 打开包含要创建快捷方式的项目的位置
  • 在项目上单击鼠标右键,然后单击“创建快捷方式”。新快捷方式显示在与原始项相同的位置
  • 将快捷方式拖动到启动文件夹中
  • 以下是来源:


    如果该程序未在您的friends PC上运行,请确保.NET版本正确。事件查看器中可能会有更多信息告诉您问题所在。

    @Miha Markic:它有所有要求,如果我手动执行,程序运行良好,但我希望它自动工作。那么,它是什么?您不知道如何将其设置为在启动时运行,或设置为在启动时运行但不运行?我不知道如何将其设置为在启动时运行尝试此或任务计划程序。同时,在完成后关闭并处置您正在使用的注册表项。该程序在您兄弟的PC上运行吗?他安装了哪个版本的.Net?向用户打招呼的程序在哪里?您的代码似乎与读取注册表有关!如果我手动执行,程序运行得很好,但我希望它能自动运行。@Lee:我把这个伟大的消息作为标签放在用户看到的表单上,那么你为什么要处理其中的注册表?