Ver Mensaje Individual
  #3  
Antiguo 07-09-2004
NeWNeO NeWNeO is offline
Miembro
 
Registrado: ago 2003
Posts: 35
Reputación: 0
NeWNeO Va por buen camino
Añadir iconos a Mi PC y Escritorio

Antes que nada debemos obetener un GUID (Global Unic Identifier) para el registro. Usaremos la función CreateGUID para obtenerla..

Código Delphi [-]
var
s: string;
begin
 CreateGUID(GuidToString(s));
 edit1.caption(s);
end;

Una vez tenemos el GUID...

1º debemos crear un nuevo tipo en: (Nueva clave)
HKEY_CLASSES_ROOT\CLSID quedando así
HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
(sin x, las x serían el GUID generado con nuestra aplicación delphi)

En HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} :
Creamos un nuevo valor alfanumérico llamado "InfoTyp"
editamos los valores:
1) (Predeterminado) = "Nuestra Carpeta de Sistema"
2) InfoTip = "Esta es la descripción de la carpeta que aparecerá en Mi PC y en el escritorio

Creamos una subclave llamada DefaultIcon y editamos el predeterminado con la dirección al icono de nuestro invento

HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\DefaultIcon

Ahora debemos de crear 2 subclaves debajo de esta
HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\Shell
HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\ShellFolder

Nuevas subclaves debajo de "Shell" (estas serán las acciones que querramos dar a nuestra carpeta en el popup del botón derecho)

HKEY_CLASSES_ROOT\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\Shell\Abrir\Command

Y Editamos el predeterminado con la acción que realizaría nuestro icono ej: "explorer.exe"
(arrancaría el explorador de windows)

Y así tantas acciones como queramos

Ahora en ShellFolder creamos un valor binario y lo editamos:
00 40 00 30 (esto impedirá que sea borrado o renombrado, 00 00 00 00 para poder editarlo)

Y por ultimo tomamos el GUID i nos dirigimos a
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current Version\Explorer\MyComputer\NameSpace y creamos una nueva clave (todo esto para el escritorio) con nuestro GUID quedando:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current Version\Explorer\MyComputer\NameSpace\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

Y editando el predeterminado de esta clave le ponemos el nombre

lo mismo pero

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Current Version\Explorer\Desktop\NameSpace\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

para el escritorio

Resumen:

- HKEY_CLASSES_ROOT
-CLSID
-{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
-Shell
+DefaultIcon>Predetermiando
-Shell
-Abrir
Command>Predeterminado
-...
+ShellFolder>Atributes

- HKEY_LOCAL_MACHINE
-Software
-Microsoft
-Windows
-CurrentVersion
-Explorer
-MyComputer
-{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}>Predeterminado
-Desktop
-{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}>Predeterminado

Espero que me haya explicado bien y que sea de ayuda para todo el que lo necesite. Si hay alguna duda podeis preguntar aquí mismo

Y a ver si alguien puede resolver mi duda en la parte de \Shell\Abrir\Command
y me puede contestar a la pregunta del principio.
Gracias.
Responder Con Cita