none
Programa que captura la url actual del navegador RRS feed

  • Pregunta

  • Hola bueno estoy haciendo un programa que me muestra la url del navegador, pero no me funciona, investigue un poco y encontré este código y sale todo bien, pero cuando intento de mandar la url en un mensaje o por consola no me arroja nada. me pueden ayudar.

    using System;
    using System.Runtime.InteropServices;
    using System.Text;
    using System.Windows.Forms;
    using NDde.Client;
    using SHDocVw;
    using System.IO;


    namespace nelson
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            [DllImport("user32.dll", SetLastError = true)]
            static extern IntPtr FindWindowEx(IntPtr parentHandle,
            IntPtr childAfter, string className, IntPtr windowTitle);

            [DllImport("user32.dll", CharSet = CharSet.Auto)]
            public static extern int SendMessage(IntPtr hWnd,
            int msg, int wParam, StringBuilder ClassName);
           
          
            private static string GetURL(IntPtr intPtr, string programName, out string url)
            {
                string temp = null;
                if (programName.Equals("chrome"))
                {
                    var hAddressBox = FindWindowEx(intPtr, IntPtr.Zero, "Chrome_OmniboxView", IntPtr.Zero);
                    var sb = new StringBuilder(256);
                    SendMessage(hAddressBox, 0x000D, 256, sb);
                    temp = sb.ToString();
                }
                if (programName.Equals("iexplore"))
                {
                    foreach (InternetExplorer ie in new ShellWindows())
                    {
                        var fileNameWithoutExtension = Path.GetFileNameWithoutExtension(ie.FullName);
                        if (fileNameWithoutExtension != null)
                        {
                            var filename = fileNameWithoutExtension.ToLower();
                            if (filename.Equals("iexplore"))
                            {
                                temp += ie.LocationURL + " ";
                            }
                        }
                    }
                }
                if (programName.Equals("firefox"))
                {
                    DdeClient dde = new DdeClient("Firefox", "WWW_GetWindowInfo");
                    dde.Connect();
                    string url1 = dde.Request("URL", int.MaxValue);
                    dde.Disconnect();
                    temp = url1.Replace("\"", "").Replace("\0", "");
                }
                url = temp;
                return temp;
            }
        }
    }

    miércoles, 8 de noviembre de 2017 21:49

Respuestas

  • Hola  Nelson Redondo barros

    Con base a tu consulta te recomiendo seguir este enlace, que te será muy útil.

    Quedamos al pendiente de cualquier actualización de tu parte.

    Saludos Cordiales.

    Gracias por usar los foros de MSDN.

    Juan
    _____
     
    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.
     
    Microsoft ofrece este servicio de forma gratuita, con la finalidad de ayudar a los usuarios y la ampliación de la base de datos de conocimientos relacionados con los productos y tecnologías de Microsoft.
     
    Este contenido es proporcionado "tal cual" y no implica ninguna responsabilidad de parte de Microsoft.

    martes, 14 de noviembre de 2017 23:41
    Moderador