gpt4 book ai didi

c# - 如何检查我的程序是否已经在运行?

转载 作者:太空狗 更新时间:2023-10-29 22:08:04 25 4
gpt4 key购买 nike

<分区>

我试过这样做:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Diagnostics;
using DannyGeneral;

namespace mws
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
try
{
if (IsApplicationAlreadyRunning() == true)
{
MessageBox.Show("The application is already running");
}
else
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
catch (Exception err)
{
Logger.Write("error " + err.ToString());
}
}
static bool IsApplicationAlreadyRunning()
{
string proc = Process.GetCurrentProcess().ProcessName;
Process[] processes = Process.GetProcessesByName(proc);
if (processes.Length > 1)
{
return true;
}
else
{
return false;
}
}
}
}

但是我遇到了一些问题。

首先,当我在 Visual Studio 中加载我的项目然后运行我的程序时,它会检测我的项目的 vshost.exe 文件,例如:我的 project.vshost

而且我希望它仅在我运行程序时检测我的程序是否正在运行,仅当它找到 .exe 例如:我的 project.exe 而不是 vshost。

25 4 0
文章推荐: c# - AddDays() 在 for 循环中
文章推荐: python - 在 python 中打开和读取 excel .xlsx 文件
文章推荐: python - 使用pywin32,Dispatch和DispatchEx有什么区别?
文章推荐: c# - 无法将类型 System.EventHandler 隐式转换为 System.EventHandler 错误