Cómo empezar con los gadgets de Windows 7

112

Nunca he programado un dispositivo para Vista o Seven, pero me gustaría intentar hacer uno. ¿Pero por dónde empiezo? He intentado buscar en google y msdn, pero no he podido encontrar nada útil. O cosas muy, muy antiguas (cosas de Vista beta), gadgets ya hechos o diferencias entre los gadgets de Vista y Seven. Pero eso no me ayuda, ya que no tengo ni idea de cómo hacer un gadget en primer lugar ... ni siquiera he logrado averiguar en qué están escritos ...

Entonces, ¿alguien podría ayudarme con un buen comienzo?

  • ¿Dónde empiezo?
  • ¿Qué necesito saber?
  • ¿En qué están escritos?
  • ¿Cómo están "empaquetados"?

En otras palabras, ¿cómo puedo pasar de una instalación limpia de Windows 7 con Visual Studio a un Gadget funcional que puedo instalar y poner en mi escritorio de Windows 7?

Svish
fuente
No he notado un enlace a la Referencia de objetos de la barra lateral de Windows que documenta la API del objeto Gadget y algunos otros.
Maksymilian Mulawa

Respuestas:

61

Aquí hay un artículo de MSDN sobre Gadgets de Vista . Alguna documentación preliminar sobre 7 gadgets y cambios . Creo que los únicos cambios importantes son que los gadgets ya no residen en la barra lateral y, como tal, los "eventos de acoplamiento / desacoplamiento" ahora son cludges de compatibilidad con versiones anteriores que realmente no deberían usarse.

La mejor manera de comenzar es probablemente simplemente modificar un dispositivo existente. Hay un gadget de ejemplo en el enlace anterior, o puede elegir uno diferente por su cuenta.

Los gadgets están escritos en HTML, CSS y en algún lenguaje de scripting de IE (generalmente Javascript, pero creo que VBScript también funciona). Para cosas realmente sofisticadas, es posible que deba crear un objeto ActiveX, por lo que C # / C ++ para COM podría ser útil saberlo.

Los gadgets se empaquetan como archivos ".gadget", que se denominan simplemente archivos Zip que contienen un manifiesto de gadget (gadget.xml) en su nivel superior.

Kevin Montrose
fuente
89

Combinando y organizando todas las respuestas actuales en una respuesta, luego agregando mi propia investigación:

Breve resumen del desarrollo de dispositivos de Microsoft :

¿En qué están escritos? Los gadgets de Windows Vista / Seven se desarrollan en una combinación de XML, HTML, CSS y algunos lenguajes de programación de IE. También es posible utilizar C # con la última versión de Script #.

¿Cómo se empaquetan / implementan? Los gadgets reales se almacenan en archivos * .gadget, que son simplemente los archivos de origen de texto enumerados anteriormente comprimidos en un solo archivo zip.

Referencias útiles para el desarrollo de gadgets:

¿dónde empiezo? Buenas referencias introductorias al desarrollo de gadgets de Windows Vista / Seven:

Si está dispuesto a utilizar recursos sin conexión, este libro parece ser un recurso excelente:

¿Qué necesito saber? Algunas otras referencias útiles; no necesariamente instructivo


Actualización: Bueno, esta ha demostrado ser una respuesta popular ~ Compartiendo mi propia experiencia reciente con el desarrollo de dispositivos de Windows 7:

Quizás la forma más fácil de comenzar con el desarrollo de gadgets de Windows 7 es modificar un gadget que ya se ha desarrollado. Hace poco hice esto yo mismo porque quería un reloj más grande. Incapaz de encontrar ninguno, jugué con una copia del reloj estándar de Windows hasta que fue dos veces más grande. Recomiendo comenzar con el dispositivo del reloj porque es bastante pequeño y está bien escrito. Aquí está el proceso que utilicé:

  1. Busque el gadget que desea modificar. Están ubicados en varios lugares diferentes. Busque carpetas llamadas * .gadget. Ejemplo:C:\Program Files\Windows Sidebar\Gadgets\Clock.Gadget\
  2. Haga una copia de esta carpeta (los gadgets instalados no están empaquetados en archivos zip).
  3. Cambie el nombre de algunas partes clave:
    1. El nombre de la carpeta
    2. El nombre dentro del archivo gadget.xml. Parece: <name>Clock</name>Este es el nombre que se mostrará en la ventana "Galería de gadgets".
  4. Comprima todo el directorio * .gadget.
  5. Cambie la extensión del archivo de "zip" a "gadget" (probablemente solo necesite eliminar la extensión ".zip").
  6. Instale su nueva copia del gadget haciendo doble clic en el nuevo archivo * .gadget. Ahora puede agregar su gadget como cualquier otro gadget (haga clic con el botón derecho en escritorio-> Gadgets)
  7. Ubique dónde está instalado este gadget (probablemente a %LOCALAPPDATA%\Microsoft\Windows Sidebar\)
  8. Modifique los archivos de este directorio. El gadget es muy similar a una página web: HTML, CSS, JS y archivos de imagen. El archivo gadget.xml especifica qué archivo se abre como página de "índice" para el gadget.
  9. Después de guardar los cambios, vea los resultados instalando una nueva instancia del gadget. También puede depurar JavaScript (el resto de ese artículo también es bastante informativo).
Leftium
fuente
1
Recomiendo usar JavaScript en "algún lenguaje de programación". Descubrimos que es bastante fácil convertir código en una extensión de Chrome si minimizas o ramificas el uso de los elementos especiales del gadget de MS, como las opciones y el botón min / max / "dock". Para propósitos de comentarios condicionales, es IE7, no IE8 para Vista y Win 7.
Erik Reppen
Si tiene alguna idea de cómo cambiar el gadget SlideShow para que se mueva más de dos tamaños (o simplemente hacerlo redimensionable como cualquier ventana) sería genial.
VISQL