控制台——args参数的赋值方法

args参数的赋值方法有好几种,主要介绍两种。

外部传参的方法:先找到bin目录下的exe文件,并创建快捷方法,在目标后面追加参数。

控制台主函数入口实现方法

1 static void Main(string[] args)
2 {
3     for (int i = 0; i < args.Length; i++)
4     {
5         Console.WriteLine(args[i]);
6     }
7     Console.ReadKey();
8 }

还有另外一种通过注册表:

using Microsoft.Win32;
using System.Windows.Forms;
static void Main(string[] args)
{
    int sleepsec = args.Length > 0 ? Convert.ToInt32(args[0]) : 0;
    Console.WriteLine(sleepsec);
    string exepath = Application.ExecutablePath;
    Console.WriteLine(exepath);
    RegistryKey RKey = Registry.LocalMachine.OpenSubKey(@"SOFTWAREMicrosoftWindowsCurrentVersionRun", true);//添加到所有用户的注册表启动项
    RKey.SetValue("app_exe", string.Format("{0} 30", exepath), RegistryValueKind.String);//注册表传参
    RKey.Close();
    Console.ReadKey();
}

结果如下:

注释:通过添加所有用户的注册表启动项(LocalMachine)会有权限问题,下次开机的时候会报异常,解决办法是将exe可执行文件更改为以管理员模式启动此程序。

优点:通过注册表传参的方式,在开机启动的时候会带入参数的数值,但是只要开过机,二次启动就不会带入参数。所以可以利用这个特性,我们可以让程序做个休眠,因为开机启动的程序过多,会对电脑造成过大符合。

参考:C#中static void Main(string[] args) 参数详解

原文地址:https://www.cnblogs.com/wuqiuxue/p/7669377.html