我希望将我的C#应用程序变成后台进程,基本上我想在tast管理器的主选项卡中隐藏我的应用程序,它是我的主应用程序的更新程序应用程序,VPN
答案 0 :(得分:0)
不要显示任何类型的GUI。进程自动是没有GUI的后台进程。
WinForms
和WPF
是GUI的类型。
创建一个只需使用它:
public class Program
{
public static void Main(string[] args)
{
// Your code...
}
}
使用visual studio:
创建Winforms项目。
删除所有
Form
类,例如Form1
。删除项目设置中的启动
Form
。转到
Program.cs
。- 醇>
从
Main
开始,移除Application
方法中的所有行。然后将代码放在main方法中。
答案 1 :(得分:0)
如果这是一个你想要连续运行的背景过程,我建议建立一个Windows服务。
Topshelf project可以让你真的很轻松。 只需安装nuget包并像这样使用它:
public class TownCrier
{
readonly Timer _timer;
public TownCrier()
{
_timer = new Timer(1000) {AutoReset = true};
_timer.Elapsed += (sender, eventArgs) => Console.WriteLine("It is {0} and all is well", DateTime.Now);
}
public void Start() { _timer.Start(); }
public void Stop() { _timer.Stop(); }
}
public class Program
{
public static void Main()
{
HostFactory.Run(x => //1
{
x.Service<TownCrier>(s => //2
{
s.ConstructUsing(name=> new TownCrier()); //3
s.WhenStarted(tc => tc.Start()); //4
s.WhenStopped(tc => tc.Stop()); //5
});
x.RunAsLocalSystem(); //6
x.SetDescription("Sample Topshelf Host"); //7
x.SetDisplayName("Stuff"); //8
x.SetServiceName("Stuff"); //9
}); //10
}
}
此代码示例来自他们的quick start guide