2010-06-10 11 views
8

Belirli bir dosya adı ve mutex adı kullanan işlemlerin PID'leri nasıl edinilir? (kullanıcı modunda değil özel çekirdek sürücüsü tarafından ancak C#.)C# ile verilen dosya adını kullanan PID'leri nasıl edinilir?

GÜNCELLEME: Ben edilen PID bütün kolları listeler a script bulundu Daniel Renshaw teşekkürler. (A değil belgelenmemiş ve donmamış fonksiyonlarını kullanma.)

cevap

1

iki SO sorular yarayabilir şunlardır:

How do I find out which process is locking a file using .NET?

Özet: handle.exe kullanıp (yani değil harika bir çözüm) çıkışını ayrıştırmak

Win32: How to get the process/thread that owns a mutex?

Özet: (ancak bazı smaple kod, bu soruya verilmiştir) kaldırılmış veya belgesiz fonksiyonları kullanmadan kullanıcı modunda mümkün olmayabilir.

+0

Belki de yanıldım ama 'handle.exe' işe yaramıyor gibi görünüyor. Bir cmd 'C: \ Windows \ System32 \ cmd.exe tanıtıcısından çalıştırmaya çalışıyordum. Şöyle diyor: 'Eşleşen bir tutamaç bulunamadı. '(Son sürümü kullanıyorum.) Ayrıca muteksler için de işe yaramıyor. İkinci adda komut tanıtıcılarını yazdırmak için komut dosyası nasıl oluşturulur? –

İlgili konular