elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 04:52  


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales

+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  Windows (Moderador: Randomize)
| | |-+  (Solucionado) ¿Como usar "Enviar a..." moviendo el archivo de origen?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: (Solucionado) ¿Como usar "Enviar a..." moviendo el archivo de origen?  (Leído 759 veces)
EleKtro H@cker


Desconectado Desconectado

Mensajes: 1.347


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
(Solucionado) ¿Como usar "Enviar a..." moviendo el archivo de origen?
« en: 27 Diciembre 2011, 19:11 »

Pues eso, uso muchiiiiiiiiiiiiiisimo la opción del menú contextual "Enviar a...", Pero luego es una molestia tener que borrar el archivo de origen...

Por eso a mi me gustaría "tocar" algo en el registro de Windows para que al usar "Enviar a...", en vez de copiar el archivo, se mueva.

Vamos, seguro que se puede... :(

EDITO: Uso windows 7.

Conozco los "trucos" de "Copiar a carpeta..." y "Mover a carpeta..." Pero eso no me interesa en absoluto, Busco algo más preciso, Tengo mis links en la carpeta de "Enviar a..." cosa que con las otras opciones no se puede tener esos accesos directos... Solo quiero que en vez de copiar, se muevan, asi de simple.

Por cierto, para quien quiera saberlo, aqui están las claves que creo que hay que trabajar:
Código:
HKEY_CLASSES_ROOT\AllFilesystemObjects\shellex\ContextMenuHandlers\SendTo
HKEY_CLASSES_ROOT\CLSID\{7BA4C740-9E81-11CF-99D3-00AA004AE837}
HKEY_CLASSES_ROOT\CLSID\{C2FBB631-2971-11d1-A18C-00C04FD75D13}
PD: Ya se que el mundo de Linux no tiene limites '¬¬   :P

Un saludo a todos


« Última modificación: 24 Febrero 2012, 13:47 por EleKtro H@cker » En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

Randomize
Moderador
***
Desconectado Desconectado

Mensajes: 15.900


randomize@hotmail.es


Ver Perfil
Re: ¿Como usar "Enviar a..." moviendo el archivo de origen?
« Respuesta #1 en: 28 Diciembre 2011, 10:09 »

Pues recordando vagamente hubo una aplicación que tocaba todo el menú contextual del explorer, ahora que no me acuerdo del nombre y no sé si es lo que buscas.


Es cierto, linux no tiene límites, te metes en el código fuente y modificas "el enviar a ..." a donde tú quieres.


En línea
EleKtro H@cker


Desconectado Desconectado

Mensajes: 1.347


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
Re: ¿Como usar "Enviar a..." moviendo el archivo de origen?
« Respuesta #2 en: 28 Diciembre 2011, 12:04 »

Pues recordando vagamente hubo una aplicación que tocaba todo el menú contextual del explorer, ahora que no me acuerdo del nombre

Quizás te refieres al ShellMenuView y ShelExView de Nirsoft, Pero esos solo me sirven para habilitar/deshabilitar opciones, y localizar en el registro las claves de las opciones del menú :(

Gracias de todas formas.
En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

EleKtro H@cker


Desconectado Desconectado

Mensajes: 1.347


(8) I will have that power!! (8) Jarkor! :D


Ver Perfil
Re: ¿Como usar "Enviar a..." moviendo el archivo de origen?
« Respuesta #3 en: 24 Febrero 2012, 13:29 »

Si es que soy muy cabezota, Y no hay nada mejor que hacerlo uno mismo.  :silbar:

Al final he echo una mini aplicación en Ruby para esta taréa

Aqui la comparto con vosotros por si fuese de utilidad: www.mediafire.com/?9a051l1wyd9jyot


Mover.exe Se puede usar de 2 formas:

1ª - Desde la consola:

Código:
Modo de empleo:
 Mover.exe [Destino] [Archivo de origen 1] [Archivo de origen 2] [etc...]

Ejemplo: (Mover tres archivos al directorio de destino "C:"
 Mover.exe "C:\" "D:\Archivo1.txt" "E:\Archivo2.jpg" "F:\Archivo3.mp3"

2º - Desde el menú "Enviar a..."  ;D
      
      Instrucciones:

     1- Guardamos el archivo "Mover.exe" donde queramos, Por ejemplo en "C:\Windows"    (No poner el ejecutable en System32, no funciona el compilado)
     2- Creamos nuestro archivo ".lnk" de enlace directo hacia una carpeta en Windows, Como lo hariamos normalmente
     2- Abrimos las propiedades del archivo ".lnk" y agregamos la ruta de "mover.exe" al destino del lnk.
         Por ejemplo, Si el destino es este: "E:\-=Temporal=-\Documentos\DVD"
         Debería quedar así: "C:\Windows\Mover.exe" "E:\-=Temporal=-\Documentos\DVD"
     4- Agregamos el archivo ".lnk" al menú "sendto" como lo hariamos normalmente.   (C:\Users\Administrador\AppData\Roaming\Microsoft\Windows\SendTo)

Sencillo, ¿Verdad?

Además le agregué un control de errores y lo hice de tal foema que los archivos no se reemplazen por equivocación.



Salu2!




El code:

Código
# -*- coding: UTF-8 -*-
 
# By EleKtro H@cker (24/02/2012)
#
# Mueve archivos desde un punto de origen hasta un punto de destino
# Pensado para usarlo como replazamiento del "SendTo" de Windows.
#
# (Requiere el uso de argumentos)
 
 
# Módulos
 
require "FileUtils"
require 'dl'
 
exit if Object.const_defined?(:Ocra)
 
 
# Variables vonstantes
 
BUTTONS_OKCANCEL = 1
BUTTONS_YESNO = 4
CLICKED_CANCEL = 2
CLICKED_YES = 6
CLICKED_NO = 7
 
 
# Métodos
 
def help()
print "\nSe requiere al menos 1 archivo de origen.\n\n\n"
print "Modo de empleo: \n\n"
print ' Mover.rb [Destino] [Archivo de origen 1] [Archivo de origen 2] [etc...]' + "\n\n\n"
print 'Ejemplo: (Mover tres archivos al directorio de destino "C:"' + "\n\n"
print ' Mover.rb "C:\" "D:\Archivo1.txt" "E:\Archivo2.jpg" "F:\Archivo3.mp3"' + "\n\n"
Process.exit
end
 
def message_box(txt, title='', buttons='')
   user32 = DL.dlopen('user32')
msgbox = DL::CFunc.new(user32['MessageBoxA'], DL::TYPE_LONG, 'MessageBox')
r, rs = msgbox.call([0, txt, title, 3].pack('L!ppL!').unpack('L!*'))
   return r
end
 
 
# Control de errores
 
if ARGV.empty? == true
help()
elsif ARGV.length < 2
help()
elsif File.directory?(ARGV[0]) == false
print "\n El directorio de destino no existe: " + (ARGV[0]) + "\n"
Process.exit
end
 
for archivo in ARGV[1..ARGV.length].each
if File.exist?(archivo) == false
print "\n El archivo a mover no existe: " + archivo + "\n"
end
 
end
 
 
 
# Proceso
 
for archivo in ARGV[1..ARGV.length].each
 
if File.exist?(ARGV[0] + "\\" + archivo.split('\\').last)
response = message_box("Origen:\n" + archivo + "\n\n Destino:\n " + ARGV[0] + "\\" + archivo.split('\\').last + "\n\n El archivo de destino ya existe, Reemplazar archivo?", "Reemplazar archivo?", BUTTONS_YESNO)
if response == CLICKED_YES
  FileUtils.move archivo, ARGV[0]
  elsif response == CLICKED_CANCEL
  Process.exit
end
else
FileUtils.move archivo, ARGV[0]
end
 
end
 
 
# Fin
 
Process.exit
« Última modificación: 24 Febrero 2012, 13:31 por EleKtro H@cker » En línea

Siempre habrá alguien más ignorante que uno mismo, Como por ejemplo el nuevo presidente de la SGAE:

"La banda ancha es totalmente innecesaria para navegar convencionalmente, Solo sirve para descargar megas y megas grandisimos, Y tal."

PD: Volviendo a la era de los 56 k.

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines