2009-10-27 55 views
3

可以以某種方式將小工具安裝到用戶的桌面上嗎?我相信我需要將所有文件複製到用戶的小工具文件夾中,例如如何以編程方式將小工具安裝到用戶桌面?

C:\Users\curusername\AppData\Local\Microsoft\Windows Sidebar\Gadgets\test.gadget

但在這裏複製文件不運行的小工具。我如何註冊/激活它?

shell執行test.gadget是否足夠?

+0

剛開始.gadget文件似乎提供了DIALOG;我可以繞過對話嗎? – Tom 2009-10-27 15:09:45

回答

0

以下MSDN文章涵蓋了這一點:

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

+0

這個答案鏈接到一篇關於Windows Sideshow小工具的文章,我不知道OP爲什麼接受它。它們與Windows桌面小工具完全不同。 – 2012-03-08 09:46:07

+0

需要停止向第三方網站添加鏈接作爲「答案」。 MSDN與SO或SE沒有關聯,如果他們決定斷開所述鏈接,則您的答案變得毫無用處......您可以將相應的註釋從文章中拖出來......然後鏈接到您的源文章。 – rlemon 2012-05-07 16:56:50

5

遲到的回答,我知道,但對方的回答都在談論Windows邊欄小工具,你的問題是有關Windows桌面小工具。

可以在Windows 7上運行小工具而無需執行歸檔文件,您需要使用IDesktopGadget接口方法RunGadget。在包含小工具文件的文件夾上調用RunGadget,它將出現在用戶的桌面上。

的RunGadget方法和示例代碼爲C++的描述在這裏提供:

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

如果您使用.NET,是指前一個問題,我問了如何實現IDesktopGadget接口:

Stack Overflow - C#: Referencing a windows shell interface

爲了向後兼容(Vista)的,我建議你回退到外殼execute方法。

+0

這不能回答在InnoSetup上做什麼,這裏有一些東西,但不支持64位AFAICT:http://forum.oszone.net/post-1861100-834.html – lapo 2012-05-07 15:28:58

+0

我不知道它如何不'回答在InnoSetup上做什麼。誠然,我從來沒有使用它,但指令仍然適用 - 在包含小工具文件的文件夾上調用RunGadget函數。如果OP知道如何爲InnoSetup編寫代碼並且InnoSetup允許使用Win32接口,那麼這個答案應該提供他需要知道的東西,而不必爲他寫整個東西(這不是真的本着事情)。 – 2012-05-07 16:47:19

相關問題