Accédant à process.mainmodule.filename sans exception win32
Lors de la récupération du chemin vers des processus en cours d'exécution en utilisant la méthode process.getProcessByid, vous pouvez rencontrer une conception win32ex qui vous empêche de vous accéder à la principale propriété. Cette exception survient lors de la tentative de récupérer les informations du module à partir de certains processus.
Solution:
Pour contourner ce problème, vous pouvez utiliser une méthode décrite par Jeff Mercado. Le code suivant montre comment obtenir le fil de file complet d'un processus spécifique:
string s = GetMainModuleFilepath(2011);
Voici l'implémentation de la méthode GetMainModuleFilepath (int ProcessId)
{
String wmiqueRyString = "SELECT processId, exécutablePath from win32_process where processId =" processId;
Utilisation (var Searcher = new ManagementObjectSearcher (WMIQUERyString))
{
Utilisation (var résultats = chercheur.get ())
{
ManagementObject MO = results.cast
private string GetMainModuleFilepath(int processId) { string wmiQueryString = "SELECT ProcessId, ExecutablePath FROM Win32_Process WHERE ProcessId = " processId; using (var searcher = new ManagementObjectSearcher(wmiQueryString)) { using (var results = searcher.Get()) { ManagementObject mo = results.Cast().FirstOrDefault(); if (mo != null) { return (string)mo["ExecutablePath"]; } } } return null; }
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3