构建失败,因为有一个主要功能

时间:2016-09-09 19:08:02

标签: c# main

我目前正在开发一项服务,但无法构建解决方案。我有这个主要功能的代码:

[STAThread]
static void Main(string[] args)
{
    ServiceBase.Run(new Service1());
}

当我评论构建成功的整个事情时,我还单独评论了STAThread和serviceBase,但仍然失败,因此问题是静态void Main。我需要它来运行我的服务,所以我不能把它留下来。

输出类型现在在Windows应用程序上,当我将其更改为类库时,构建成功但创建.dll文件,我的应用程序需要是.exe

为什么会失败?

-Edit1- 这是Build:

的输出
1>------ Build started: Project: Myst Service, Configuration: Debug Any CPU ------
1>C:\Users\Username\Documents\Visual Studio 2015\Projects\Myst Service\Myst Service\Service1.cs(23,21,23,25): error CS0017: Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

所以我搜索了Main的整个解决方案,看起来在Program.cs中还有一个静态void Main,这是常见的吗?

1 个答案:

答案 0 :(得分:1)

在错误输出日志中显示

  

错误CS0017:程序定义了多个入口点。使用/ main编译以指定包含入口点的类型。

这意味着程序中有多个Main,要么删除第二个,要么进入项目属性并在Startup object区域下设置所需的入口点。 / p>

enter image description here

P.S。对于Windows服务,您需要输出类型为Console Application