我有一个表单应用程序作为 DLL,我想在我的控制台应用程序中运行它.我该怎么做

本文关键字:应用程序 控制台 我的 运行 我该怎么做 表单 有一个 DLL | 更新日期: 2023-09-27 17:55:25

我有一个控制台应用程序,我想用它运行这个 Dll 中的代码:

这是 Dll 的代码:

namespace shutdown_msg
{
    public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    private void button1_Click(object sender, EventArgs e)
    {
        Process.Start("shutdown", "/s /t 0");
    }
    private void label1_Click(object sender, EventArgs e)
    {
    }
}
}

这是我的控制台应用程序代码,应该"运行"Dll

  if (txt.IndexOf("shutdown") >= 0)
            {
            Console.WriteLine("shutdown was said");
            System.Windows.Forms.Application.Run(new shutdown_msg.Form1());
            }

我有一个表单应用程序作为 DLL,我想在我的控制台应用程序中运行它.我该怎么做

你不运行dll,你只引用它。您可以运行exe

您有 2 个选项:

1-生成可执行文件:

您可以构建Windows窗体应用程序,然后可以从项目文件夹中获取"exe"。然后,您可以使用

Process.Start("yourPathHere.exe");

2-生成一个dll:

在 Winforms 项目中,转到项目 =>右键单击 => 属性>输出类型 =>类库。

在控制台应用中:右键单击引用 => 添加引用 => 浏览到您的 dll 路径。

并添加 参考 也用于System.Windows.Forms.dll

然后从控制台应用:

static void Main(string[] args)
{
    var f = new WindowsFormsProjectName.Form1();
    f.ShowDialog();
}

或:

static void Main(string[] args)
{
    System.Windows.Forms.Application.Run(new WindowsFormsProjectName.Form1());
}
Application.Run(new shutdown_msg.Form1());

只需直接运行表单即可。

您可以在任何普通的 WinForm 项目中Program.cs中找到相同的代码。