2009-10-27 8 views
3

Est-il possible d'installer un gadget sur le bureau d'un utilisateur en quelque sorte? Je crois que j'ai besoin de copier tous les fichiers dans un dossier de gadget de l'utilisateur, par ex. Mais la copie des fichiers ici n'exécute pas le gadget. Comment puis-je l'enregistrer/l'activer?Comment puis-je installer un gadget sur le bureau d'un utilisateur par programme?

Est-il suffisant d'exécuter shell test.gadget?

+0

début juste le fichier .gadget semble offrir DIALOG; puis-je contourner le dialogue? – Tom

Répondre

0
+0

Cette réponse renvoie à un article sur Windows Sideshow Gadgets, je ne sais pas pourquoi l'OP l'a accepté. Ils fonctionnent complètement différemment des gadgets de bureau Windows. –

+0

Ajout de liens vers des sites tiers en tant que «réponse» doit être arrêté. MSDN n'est pas associé à SO ou SE et s'ils décident de rompre ce lien, votre réponse devient inutile ... au lieu de cela, vous pouvez retirer les notes applicables de l'article ... puis un lien vers l'article pour votre source. – rlemon

5

réponse tardive, je sais, mais l'autre réponse est parle sur Windows Sideshow Gadgets, et votre question est lié à Windows Desktop Gadgets.

Il est possible d'exécuter le gadget sur Windows 7 sans shell exécutant l'archive, vous devez utiliser la méthode d'interface IDesktopGadgetRunGadget. Appelez RunGadget sur un dossier contenant les fichiers de votre gadget et il apparaîtra sur le bureau de l'utilisateur.

Une description de la méthode RunGadget et exemple de code C++ est offert ici:

http://msdn.microsoft.com/en-us/library/dd378390(VS.85).aspx

Si vous utilisez .NET, reportez-vous à une question précédente, j'ai demandé comment implémenter l'interface IDesktopGadget :

Stack Overflow - C#: Referencing a windows shell interface

pour rétrocompatibilité (Vista), je vous recommande de retombez exécuter à la coquille méthode.

+0

Cela ne répond pas quoi faire sur InnoSetup, il y a quelque chose ici, mais ne supporte pas 64bit AFAICT: http://forum.oszone.net/post-1861100-834.html – lapo

+0

Je ne suis pas sûr de savoir comment il doesn ' t répondez quoi faire sur InnoSetup. Vrai, je ne l'ai jamais utilisé, mais les instructions s'appliquent toujours - appelez la fonction 'RunGadget' sur un dossier contenant les fichiers du gadget. Si l'OP sait comment coder pour InnoSetup et InnoSetup permet l'utilisation d'interfaces Win32, alors cette réponse devrait fournir ce qu'il a besoin de savoir, sans aller jusqu'à écrire le tout pour lui (ce qui n'est pas vraiment dans l'esprit de des choses). –