Лучший отвечающий
Имя объектов потока

Вопрос
-
Добрый день, у меня возникла сложная ситуация с возможностью определения имени конечного обекта потока, то есть, от куда идет поток в (любом) процессе (стартовый адрес) я мого определить а вот к чему этот поток обращаеться файл, библиотека.... (если не замыкаеться на себя) я не в состоянии найти, как это можно реализовать при использовании C#/WMI/WinAPI.
PS. За раниие благодарен, можно хотя бы ссылочку.29 ноября 2014 г. 19:46
Ответы
-
Есть такая утилита - Process Monitor (ProcMon). Можно попробовать вызывать её из своего приложения в командном режиме и парсить логи от неё.
- Предложено в качестве ответа YatajgaModerator 30 ноября 2014 г. 6:30
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 9 декабря 2014 г. 15:00
29 ноября 2014 г. 21:16
Все ответы
-
Есть такая утилита - Process Monitor (ProcMon). Можно попробовать вызывать её из своего приложения в командном режиме и парсить логи от неё.
- Предложено в качестве ответа YatajgaModerator 30 ноября 2014 г. 6:30
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 9 декабря 2014 г. 15:00
29 ноября 2014 г. 21:16 -
Нашел утилиту для решения проблемы но ни как не могу получить вывод
public async void ProcessHandle() { Process InfoHandle = new System.Diagnostics.Process(); InfoHandle.StartInfo.FileName = "cmd.exe"; //InfoHandle.StartInfo.Arguments = "Ping 192.168.1.1"; InfoHandle.StartInfo.RedirectStandardInput = true; InfoHandle.StartInfo.RedirectStandardOutput = true; InfoHandle.StartInfo.UseShellExecute = false; InfoHandle.StartInfo.CreateNoWindow = true; InfoHandle.StartInfo.WorkingDirectory = Environment.SystemDirectory; InfoHandle.Start(); InfoHandle.StandardInput.WriteLineAsync("handle -a -p " + RequestWMI_Process.AbbreName[Form1.BufIndex].ToString()); Task <string> StringsHandle = InfoHandle.StandardOutput.ReadToEndAsync(); InputFromPropertyProcess.textBox1.Text = await StringsHandle; //InputFromPropertyProcess.listBox6.Items.Add(StringsHandle[1]); //InputFromPropertyProcess.listBox6.Items.Add(StringsHandle[2]); }
В Win7 перехват вывода строки ещё как то работает а Win8.1 оно (Окно) зависает, без результата.- Изменено Сергей29 1 декабря 2014 г. 17:02
1 декабря 2014 г. 16:55 -
Он зависает на этой строке Task <string> StringsHandle = InfoHandle.StandardOutput.ReadToEndAsync(); Попробовал зделать так string StringsHandle = InfoHandle.StandardOutput.ReadToEnd(); то же самое, то есть на сколько понимаю он не может завершить операцию чтения вывода.1 декабря 2014 г. 22:42