Un regard sur cette answer et compte tenu du commentaire de Pierre: it's working for me but it takes a while to get the url
j'ai écrit le code suivant. Peut-être qu'il pourrait être utile à quelqu'un:
Process[] lFFs = Process.GetProcessesByName("firefox");
for (int i = 0; i < lEs.Length; i++)
{
UIAutomationClient.IUIAutomationElement ee = lEs.GetElement(i);
if (ee != null && ee.CurrentName != null &&
(ee.CurrentName.Contains("search") || ee.CurrentName.Contains("navigation")))
{ // For spanish you can use: (ee.CurrentName.Contains("de búsqueda") || ee.CurrentName== "Barra de navegación")
lEs = ee.FindAll(UIAutomationClient.TreeScope.TreeScope_Children, c);
if (lEs.Length > 0)
i = 0;
else
{
try
{
object obj = ee.GetCurrentPattern(10002); // 10002: ValuePattern
if (obj != null)
{
string sUrl = ((UIAutomationClient.IUIAutomationValuePattern)obj).CurrentValue;
return sUrl;
}
}
catch
{ }
}
}
}
Important, pour faire que ce code fonctionne, votre code doit faire référence à la bibliothèque COM: UIAutomationClient
Bonjour, Votre code fonctionne toujours? J'ai essayé mais sans succès. @PeterJ – Ayorus
ça marche pour moi mais ça prend du temps pour avoir l'url – PeterJ