PDA

Ver la Versión Completa : que es la shell?


kenychy
06-09-2010, 16:48:08
:cool:hermanos, necesito un poquito de colavoracion de ustedes con este tema y con tododos los otros que me pertenecen, :D como ya saben estoy haciendo un copier y he visto que los otros usan una dll de tipo Shell Extension, y necesito saber que es esta dll, que hace , para que funciona, y como funciona. besitos.;):rolleyes::p

escafandra
06-09-2010, 21:02:41
Te recomiendo que revises este tema (http://www.delphiaccess.com/forum/index.php?topic=2749.0;topicseen) donde se trata de realizar un programa de backup. Este otro hilo (http://www.delphiaccess.com/forum/index.php?topic=3808.0;topicseen) es un truco para copiar múltiples archivos y/o carpetas con la shell del sistema. Y aquí (http://www.delphiaccess.com/forum/index.php?topic=3386.0) realizamos una monitorización del shell sólo madiente API.


Saludos.

kenychy
13-09-2010, 15:39:07
gracias hermano

kenychy
13-09-2010, 15:40:03
Colega yo puedo sustituir esta dll?

Casimiro Notevi
13-09-2010, 16:32:36
Por favor, kenychy, lee nuestra guía de estilo (http://www.clubdelphi.com/foros/guiaestilo.php), gracias. Trata de explicar claramente qué problema tienes y qué necesitas. Muchas gracias. :)

kenychy
13-09-2010, 17:07:44
Camaradas disculpa si les he causado muchos problemas por mi impaciencia, no ha sido mi intencion, la cuestion es que llevo 2 semanas de atarzo con la aplicacion que estoy haciendo, esto es porque no se como hacer que mi aplicacion sea la que manipule todas las ordenes de copiar(ctrl+c), pegar(ctrl+v), etc. que se ejecuta en el explorador de windows y que las prosesa el copiador de este. si tu has usado alguna vez el supercopier, o el teracopy, o cual quier otro programa de este tipo podras darte cuenta de que estos acen lo que yo quiro hacer. A mi me parece y es toy casi seguro que es utilizando la shell de windows, pero no se que mensajes son los que tengo que procesar. si ustedes no conocen mucho de este tema lo entiendo, pero porfavor escribanme asi sea una boberia, de todad formas les doy las gracias a todos los que han heco el intyento por ayudarme.

Casimiro Notevi
13-09-2010, 17:30:55
Tan sólo debes explicar MUY CLARAMENTE lo que necesitas :)

kenychy
13-09-2010, 17:50:23
A SUS ORDENES JEFE!
Estoy aciendo un programa que sirve para copiar archivos, carpetas y documentos, muy similar al "SUPER COPIER", "TERACOPY", "COPIADOR DE WINDOWS", ETC. Este ya copia, mueve, etc. pero para que el copie o mueva tego que abrirlo, pinchar en agregar archivos y elegir el destino, tarea que se puede simplificar precionando sobre un archivo o una carpeta, ctrl+c, o ctrl+x, o dando clik derecho y en el menu dar clik en copiar o en pegar o en enviar a, etc, si todo esto lo hacen los demas copier porque el mi no, yo quiero que el mio sea el que manipule todad estas ordenes, solamente el mio, todos los demas tienen que irse a dormir, teagradeceria con el corazon si me dijeras que entendiste lo que yo quiero hacer.

Casimiro Notevi
13-09-2010, 18:16:30
Sí, se ha entendido bien :)

Seguro que algún compañero te lo explica... yo no sé, tendría que buscar por clubdelphi porque sé que se ha tratado algunas veces ese tema por aquí.

kenychy
13-09-2010, 18:21:24
gracias hermano.

kenychy
13-10-2010, 18:57:35
Pror favor ayudenme con este tema

Ñuño Martínez
14-10-2010, 14:46:43
Tú lo que quieres es añadir o modificar una acción del menú "archivo" del explorador Windows, ¿no?

Si es así, la respuesta se encuentra en MSDN (Microsoft Developer Network) (msdn.microsoft.com/), y hasta donde sé tiene poco que ver con la "shell". Si no recuerdo mal, basta con (re)definir un par de variables en el registro.

mcs
20-10-2010, 12:33:23
Tú lo que quieres es añadir o modificar una acción del menú "archivo" del explorador Windows, ¿no?

Si es así, la respuesta se encuentra en MSDN (Microsoft Developer Network) (http://msdn.microsoft.com/), y hasta donde sé tiene poco que ver con la "shell". Si no recuerdo mal, basta con (re)definir un par de variables en el registro.

si no entiendo mal lo que explica kenychy, lo que quiere hacer es "capturar" las ordenes cortar, copiar y pegar, y que cuando se llame a una de estas funciones se ejecute su programa. Sólo alterando el registro se puede hacer esto? si no me equivoco, se trataría de poner un hook, de la misma forma que lo hace (por ejemplo) el JDownloader cuando copías un enlace al portapapeles...

Lepe
20-10-2010, 16:16:14
Lo que tienes que hacer es registrar tu programa como un portapapeles, de forma que cuando se copie algo en windows, Windows informa a toda la lista de programas registrados como portapapeles, así de simple.

http://delphi.about.com/od/windowsshellapi/a/clipboard_spy_2.htm

Cuando registras tu aplicación, windows te devuelve quien es el siguiente en la cadena de programas portapapeles, ya que lo necesitas cuando salgas de tu programa.

kenychy
20-10-2010, 20:18:25
gracias hermanos voy a provar si de esa forma me sirve.

kenychy
19-11-2010, 17:04:22
aludos hermanos, lo que medieron estqa muy bueno aunque no lo entiendo muy bien, gracias a esto descubri que el ctrl+c manipula el portapapeles, esta parte ya me es facil, ahora lo que me esta presentando problemas es el ctrl+v, si estan aburridos porfavor ayudenme, saludos.

javier_ecf
20-11-2010, 09:20:22
Si lo que quieres es simular el pegado, pues no estoy muy seguro pero creo que puedes invocar esos procedimientos remotamente. Tendrias que pasar un ratito en msdn.microsoft.com

Seria algo como buscar la ventana activa y buscar cierto control para modificar sus propiedades, funciones como GetForegroundWindow o FindWindowEx te pueden servir.

Si es algo de copiar archivos, pues no me lo tomes a mal pero no veo caso a hacer un programa para 'simular' en cierta manera las operaciones de windows, a menos claro que utilizes ensamblador o algo de bajo nivel para aumentar el perfomance, pero es bueno para aprender a utilizar el API de windows.