C# Win32Processes.GetHandles不存在
我正在试图编译这个源代码C# Win32Processes.GetHandles不存在,c#,C#,我正在试图编译这个源代码 class Program { static void Main(string[] args) { String MutexName = "TibiaPlayerMutex"; String ProcessName = "tibia"; int i = 0; do { try { Proce
class Program
{
static void Main(string[] args)
{
String MutexName = "TibiaPlayerMutex";
String ProcessName = "tibia";
int i = 0;
do
{
try
{
Process process = Process.GetProcessesByName(ProcessName)[0];
var handles = Win32Processes.GetHandles(process, "Mutant", "\\Sessions\\1\\BaseNamedObjects\\" + MutexName);
if (handles.Count == 0) throw new System.ArgumentException("NoMutex", "original");
foreach (var handle in handles)
{
IntPtr ipHandle = IntPtr.Zero;
if (!Win32API.DuplicateHandle(Process.GetProcessById(handle.ProcessID).Handle, handle.Handle, Win32API.GetCurrentProcess(), out ipHandle, 0, false, Win32API.DUPLICATE_CLOSE_SOURCE))
Console.WriteLine("DuplicateHandle() failed, error = {0}", Marshal.GetLastWin32Error());
Console.WriteLine("Mutex was killed");
}
}
catch { }
} while (i == 0);
}
}
我得到以下信息
名称“Win32 Process”在当前上下文中不存在d:\users\yorick grijseels\documents\visual studio 2013\Projects\WindowsFormsApplication4\WindowsFormsApplication4\Program.cs 32 35 WindowsFormsApplication4
我在谷歌上搜索了一下,但我找不到解决这个问题的方法。我是不是错过了什么?你错过了让事情运转起来的重要部分。的问题部分包含您将需要的类(
Win32API
和win32processs
)。这就是您在不理解的情况下从web复制粘贴代码时发生的情况;)。你在哪里找到那个密码的?它可能附带了一个Win32Processes类。这是因为缺少名为“Win32Processes”的静态类。我猜复制和粘贴工作不好……是的,我正在从internet粘贴此文件,我需要关闭该过程生成的互斥锁。我在这里找到的源代码是否可以使用其他代码来解决这个问题?您到底想做什么?