Título: X q no sale la carpeta del explorer? Publicado por: germixxx en 4 Diciembre 2005, 22:17 pm No entiendo q hago mal, le di un monton de vueltas pero no me sale, si quiero saber el titulo de la ventana me funciona, asi:
Código: Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Código: Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Título: Re: X q no sale la carpeta del explorer? Publicado por: NYlOn en 5 Diciembre 2005, 00:35 am no entiendo lo q keres hacer
podrias explicarte un pokito mas ?? Título: Re: X q no sale la carpeta del explorer? Publicado por: germixxx en 5 Diciembre 2005, 00:53 am Lo q quiero hacer es identificar las ventanas del explorer y saber en q carpeta esta ubicado. Por ejempo si tenes una ventana del explorer abierta en "c:\german" q en el text1 aparezca "c:\german". Lo maximo q eh logrado es q aparezca el titulo de la ventana en este caso "german"
Título: Re: X q no sale la carpeta del explorer? Publicado por: NYlOn en 5 Diciembre 2005, 22:06 pm Bueno, eso se podria hacer si tienes la opcion "Mostrar la ruta completa en la barra de titulo" (Herramientas>Opciones de carpeta>Ver)
En ese caso si podrias ver todo, pero de otra forma la verdad no se me ocurre :S Saludos.- Título: Re: X q no sale la carpeta del explorer? Publicado por: germixxx en 5 Diciembre 2005, 22:32 pm MMMM de esa forma funcionaria pero es demasiado rebuscado, ya q si no tenes la opcion activada t manda error :'(. La forma q estoy intentado identifica la ventana y va escalando hacia las "subventanas" hasta llegar al cuadro de texto donde dice la direccion(edit es su classname). De todas formas tmb lo necesito para internet explorer q despues de hacer el de explorer comun solo le tengo q cambiar la primera llamada findwindow ya q los classnames de las "subventanas" hasta llegar el cuadro de texto de la direccion son los mismos, y el metodo de mostrar la ruta completa sobre la ventana fallaria x q cuando entras a una pagina en el internet explorer en la barra de titulo sale el titulo de la pagina no la direccion pagina en si
Este es el codigo q no entiendo donde falla, cuando empiezo a identificar subventanas con FindWindowEx me devuelve la cadena vacia. Código: Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Para dar una idea necesito este codigo para grabar las paginas abiertas y las rutas de las ventanas del explorer, matar el explorer y despues reabrir las paginas y las ventanas de explorer con sus rutas correspondientes. Título: Re: X q no sale la carpeta del explorer? Publicado por: Slasher-K en 7 Diciembre 2005, 16:12 pm Mira la función GetWindowModuleFileName (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/getwindowmodulefilename.asp), te devuelve la ruta de acceso del proceso que creó la ventana especificada.
Para enumerar las ventanas usa EnumWindows (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/enumwindows.asp). No tengo tiempo sino posteo un ejemplo, pero busca en google que hay muchos ejemplos (creo que el la web de guille hay varios, de hecho). Saludos. P.D: Siento estar pasando poco por el foro pero me quedé sin inet y hasta que no vengan a instalarme inet en casa estoy aislado de la red :'(. Título: Re: X q no sale la carpeta del explorer? Publicado por: germixxx en 8 Diciembre 2005, 19:28 pm Bueno... supongo q lo de GetWindowModuleFileName no va a funcionar ya q si devuelve el procesos q creo la ventana va a delvolverme "explorer.exe". De todas formas voy a probarlo haber como va, creo q la unica manera de hacerlo es leer el cuadro de texto q dice el path del explorer, identificando el hwnd del textbox y haciendo sendmessage con WM_GETTEXT(pero no se donde falla mi codigo :'(). Igual voy a probar lo de GetWindowModuleFileName. Lo de enumwindows creo q no lo voy a necesitar ya q identifico la primera ventana(findwindow) con la clase "cabinetwclass" grabo el texto(la direccion) mato la ventana, identifico otra ves la primera ventana(findwindow) con la clase "cabinetwclass" mato la ventana y asi sucesivamente hasta q no encuentre mas ventanas. Igual voy a intentar tu metodo Slasher-K, mucha gracias, despues posteo resulatados
|