Erste Schritte mit Windows 7-Gadgets

112

Ich habe noch nie ein Gadget für Vista oder Seven programmiert, möchte aber versuchen, eines zu erstellen. Aber wo fange ich an? Ich habe versucht, auf Google und MSDN zu suchen, aber ich habe nichts Nützliches gefunden. Entweder sehr, sehr altes Zeug (Vista Beta-Zeug), bereits gemachte Gadgets oder Unterschiede zwischen Gadgets in Vista und Seven. Aber das hilft mir nicht, da ich überhaupt keine Ahnung habe, wie man ein Gadget macht ... Ich habe nicht einmal herausgefunden, worin sie geschrieben sind ...

Könnte mir jemand bei einem Kickstart helfen?

  • Wo soll ich anfangen?
  • Was muss ich wissen?
  • Worin sind sie geschrieben?
  • Wie werden sie "verpackt"?

Mit anderen Worten, wie komme ich von einer Neuinstallation von Windows 7 mit Visual Studio zu einem funktionierenden Gadget, das ich installieren und auf meinem Windows 7-Desktop installieren kann.

Svish
quelle
Ich habe keinen Link zur Windows-Seitenleistenobjektreferenz bemerkt, die die API des Gadget-Objekts und einige andere dokumentiert.
Maksymilian Mulawa

Antworten:

61

Hier ist ein MSDN-Artikel zu Vista-Gadgets . Einige vorläufige Dokumentationen zu 7 Gadgets und Änderungen . Ich denke, die einzigen wesentlichen Änderungen sind, dass sich Gadgets nicht mehr in der Seitenleiste befinden. Daher sind "Dock / Undock-Ereignisse" jetzt Abwärtskompatibilitätsprobleme, die eigentlich nicht verwendet werden sollten.

Der beste Weg, um loszulegen, besteht wahrscheinlich darin, ein vorhandenes Gadget zu optimieren. Der obige Link enthält ein Beispiel-Gadget, oder Sie können selbst ein anderes auswählen.

Gadgets sind in HTML, CSS und einigen IE-Skriptsprachen geschrieben (im Allgemeinen Javascript, aber ich glaube, dass VBScript auch funktioniert). Für wirklich ausgefallene Dinge müssen Sie möglicherweise ein ActiveX-Objekt erstellen, sodass C # / C ++ für COM hilfreich sein kann.

Gadgets werden als ".gadget" -Dateien verpackt, die nur in Zip-Archive umbenannt werden und in ihrer obersten Ebene ein Gadget-Manifest (gadget.xml) enthalten.

Kevin Montrose
quelle
89

Kombinieren und organisieren Sie alle aktuellen Antworten zu einer Antwort und fügen Sie dann meine eigene Forschung hinzu:

Kurze Zusammenfassung der Microsoft-Gadget- Entwicklung:

Worin sind sie geschrieben? Windows Vista / Seven-Gadgets werden in einer Mischung aus XML, HTML, CSS und einigen IE-Skriptsprachen entwickelt. Es ist auch möglich, C # mit der neuesten Version von Script # zu verwenden.

Wie werden sie verpackt / bereitgestellt? Die eigentlichen Gadgets werden in * .gadget-Dateien gespeichert, bei denen es sich einfach um die oben aufgeführten Textquellendateien handelt, die in einer einzigen Zip-Datei komprimiert sind.

Nützliche Referenzen für die Gadget-Entwicklung:

Wo soll ich anfangen? Gute einführende Verweise auf die Windows Vista / Seven-Gadget-Entwicklung:

Wenn Sie bereit sind, Offline-Ressourcen zu verwenden, scheint dieses Buch eine hervorragende Ressource zu sein:

Was muss ich wissen? Einige andere nützliche Referenzen; nicht unbedingt lehrreich


Update: Nun, dies hat sich als beliebte Antwort erwiesen. ~ Teilen meiner jüngsten Erfahrungen mit der Entwicklung von Windows 7-Gadgets:

Der einfachste Weg, um mit der Entwicklung von Windows 7-Gadgets zu beginnen, besteht darin, ein bereits entwickeltes Gadget zu ändern. Ich habe das kürzlich selbst gemacht, weil ich ein größeres Uhrengerät haben wollte. Ich konnte keine finden und bastelte an einer Kopie des Standard-Windows-Uhren-Gadgets, bis es doppelt so groß war. Ich empfehle, mit dem Uhr-Gadget zu beginnen, da es ziemlich klein und gut geschrieben ist. Hier ist der Prozess, den ich verwendet habe:

  1. Suchen Sie das Gadget, das Sie ändern möchten. Sie befinden sich an verschiedenen Orten. Suchen Sie nach Ordnern mit dem Namen * .gadget. Beispiel:C:\Program Files\Windows Sidebar\Gadgets\Clock.Gadget\
  2. Erstellen Sie eine Kopie dieses Ordners (installierte Gadgets werden nicht in Zip-Dateien eingeschlossen.)
  3. Benennen Sie einige wichtige Teile um:
    1. Der Ordnername
    2. Der Name in der Datei gadget.xml. Es sieht so aus: <name>Clock</name>Dies ist der Name, der im Fenster "Gadgets-Galerie" angezeigt wird.
  4. Komprimieren Sie das gesamte * .gadget-Verzeichnis.
  5. Ändern Sie die Dateierweiterung von "zip" in "gadget" (Sie müssen wahrscheinlich nur die Erweiterung ".zip" entfernen.)
  6. Installieren Sie Ihre neue Kopie des Gadgets, indem Sie auf die neue * .gadget-Datei doppelklicken. Sie können Ihr Gadget jetzt wie jedes andere Gadget hinzufügen (Rechtsklick auf Desktop-> Gadgets).
  7. Suchen Sie, wo dieses Gadget installiert ist (wahrscheinlich zu %LOCALAPPDATA%\Microsoft\Windows Sidebar\)
  8. Ändern Sie die Dateien in diesem Verzeichnis. Das Gadget ist einer Webseite sehr ähnlich: HTML-, CSS-, JS- und Bilddateien. Die Datei gadget.xml gibt an, welche Datei als "Index" -Seite für das Gadget geöffnet wird.
  9. Zeigen Sie nach dem Speichern der Änderungen die Ergebnisse an, indem Sie eine neue Instanz des Gadgets installieren. Sie können auch das JavaScript debuggen (der Rest dieses Artikels ist auch ziemlich informativ).
Leftium
quelle
1
Ich empfehle die Verwendung von JavaScript über "einige Skriptsprachen". Wir finden, dass es ziemlich einfach ist, Code in eine Chrome-Erweiterung zu konvertieren, wenn Sie die Verwendung von speziellen MS-Gadget-Dingen wie den Optionen und der Schaltfläche min / max / "dock" minimieren oder verzweigen. Für bedingte Kommentare ist es IE7, nicht IE8 für Vista und Win 7.
Erik Reppen
Wenn Sie nicht wissen, wie Sie das SlideShow-Gadget so ändern können, dass es sich um mehr als zwei Größen bewegt (oder es einfach wie jedes Fenster in der Größe veränderbar macht), wäre das großartig.
VISQL
5

Ich habe begonnen, ein Tutorial für alle zu diesem Thema zu schreiben, siehe Erstellen von Gadgets für Windows 7 .

digitalPBK
quelle