C# - 在系统启动时最小化为托盘

在我的应用程序中,我可以选择在Windows启动时启动应用程序。这很好。我也拥有它,以便在最小化时将应用程序最小化到系统托盘。有没有一种方法可以让它在与Windows同时启动时自动最小化?我能想到的唯一方法是检索系统已启动的时间,并使用该数据确定机器最近是否启动。显然这个理论存在很多缺陷。任何人有任何其他想法如何做到这一点?C# - 在系统启动时最小化为托盘

回答:

在程序中实现一个命令行开关,使程序最小化到托盘。当您在Windows启动时启动该程序时,只需包含该开关即可。

http://msdn.microsoft.com/en-us/library/acy3edy3.aspx

回答:

使用命令行参数,例如,/startminimised。在您的应用程序中,当应用程序启动时检查是否存在此开关(使用Environment.GetCommandLineArgs),并在开关存在时自动将其最小化。

然后在您的“启动时运行”选项中,确保应用程序以此开关启动,例如,将运行注册表项或启动组快捷方式设置为myapp.exe /startminimised

然而,当用户运行您的应用程序时,他们不会(通常是!)指定开关,因此该应用程序将显示为一个窗口。

回答:

在的WindowState变化表单 “属性”, “最小化”,或代码:

 //After this: 

InitializeComponent();

//Place this line:

WindowState = FormWindowState.Minimized;

希望这有助于!

回答:

你可以用一个参数调用你的程序,例如“-minimized”,然后处理该参数在你的程序:

在你的Program.cs,处理参数,然后传递参数到Form1:

 static void Main(string[] args) 

{

Application.EnableVisualStyles();

Application.SetCompatibleTextRenderingDefault(false);

if (args.Length != 0){

Application.Run(new Form1(args[0]));

}

else

{

Application.Run(new Form1("normalState"));

}

}

在你Form1.cs中,你可以调用与传递的参数的功能,并尽量减少应用程序:

public Form1(string parameter) 

{

InitializeComponent();

SetStartup(); //This function will set your app in the registry to run on startup. I'll explain this function below.

MinimizeApp(parameter);

}

例如,使用此功能,我用,如果英语新使用-minimized参数启动应用程序,然后它将开始最小化,在任务栏中弹出一个notifyicon图标,并且一个泡泡说应用程序已启动并在后台运行。

public void MinimizeApp(string parameter) 

{

if (parameter == "-minimized")

{

this.WindowState = FormWindowState.Minimized;

notifyIcon1.Visible = true;

notifyIcon1.BalloonTipText = "Program is started and running in the background...";

notifyIcon1.ShowBalloonTip(500);

Hide();

}

}

SetStartup函数将您的程序放入注册表中,以便它在启动时运行。 “C:/programs/app.exe” -minimized然后它会启动最小化,当您重新启动计算机,它也

private void SetStartup(){ 

Microsoft.Win32.RegistryKey key;

key = Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");

key.SetValue(AppName, Application.ExecutablePath.ToString());

string ApplicationPath = "\"" + Application.ExecutablePath.ToString() + "\" -minimized";

key.SetValue("MyApplicationName", ApplicationPath);

key.Close();

}

现在,当你与-minimized参数启动程序,例如

开始自动最小化。

以上是 C# - 在系统启动时最小化为托盘 的全部内容, 来源链接: utcz.com/qa/263706.html

回到顶部