2011-04-12 98 views
4

我一直认为用一个可以启动我的程序的“活动桌面”html页面替换正常的Windows桌面图标,以及通过链接打开目录和文件。这将是一种非常酷的自定义桌面的方式。活动桌面网站打开程序?

使用“file://”协议是我的第一种方法,但这种方式无法正常工作。在another SO Post我发现this link,但它有点超过我的头。这是正确的方法吗?

我无法想象我是第一个考虑这个问题的人;这似乎是一个好主意(不是?)。你们都在想什么?

+0

我的答案得到了那个东西的工作?如果是这样。我希望看到最终结果。你会让我发布吗? – 2011-04-24 18:24:58

+0

感谢Jason的兴趣!不幸的是,随着一些自由职业者的出现,这个项目暂时陷入了后退之中,但我依然对此退出了舞台,并且肯定会回报 – 2011-04-26 05:15:56

+0

的结果......我从来没有接触过它,并且一直是一个Mac小伙子。现在有一段时间了。仍然是一个非常整洁的想法,我认为;-) – 2014-04-08 13:19:42

回答

2

我喜欢用于桌面定制的活动桌面的想法。你可以做的是注册你自己的模式

添加注册表项。 这是我使用的第一个例子。

将其添加到.reg文件并导入到注册表中。
更改“MYSCHEMA”和可执行文件的位置,如果你创建一个超级链接

<a href="myschema://Whatever+i+want" >Click Here</a> 

您的计算机将在href打开MYSCHEMA申请符合自己的需求。目前

Windows Registry Editor Version 5.00 

[HKEY_CLASSES_ROOT\myschema] 
@="URL:My Schema Protocol" 
"URL Protocol"="" 

[HKEY_CLASSES_ROOT\myschema\DefaultIcon] 
@="C:\\Program Files\\MySchemaProgram\\MySchema.exe,1" 

[HKEY_CLASSES_ROOT\myschema\shell] 

[HKEY_CLASSES_ROOT\myschema\shell\open] 

[HKEY_CLASSES_ROOT\myschema\shell\open\command] 
@="\"C:\\Program Files\\MySchemaProgram\\MySchema.exe\" \"%1\"" 

在命令行中。

只是留心,因为Ervironment.CommandLine将UTF因此解码

//This Link 
<a href="myschema://Something%20Here">Click Here</a> 

//Will Result in This Command Line Execution. 
"C:\Program Files\MySchemaProgram\MySchema.exe" myschema://Something Here 

您还可以使用此模式在ShellExecute的命令以及运行对话框。

这是我用来开始使用的示例程序。你应该能够很快得到这个想法

using System; 
using System.Collections.Generic; 
using System.Text; 

namespace Alert 
{ 
    class Program 
    { 
    static string ProcessInput(string s) 
    { 
     // TODO Verify and validate the input 
     // string as appropriate for your application. 
     return s; 
    } 

    static void Main(string[] args) 
    { 
     Console.WriteLine("Alert.exe invoked with the following parameters.\r\n"); 
     Console.WriteLine("Raw command-line: \n\t" + Environment.CommandLine); 

     Console.WriteLine("\n\nArguments:\n"); 
     foreach (string s in args) 
     { 
     Console.WriteLine("\t" + ProcessInput(s)); 
     } 
     Console.WriteLine("\nPress any key to continue..."); 
     Console.ReadKey(); 
    } 
    } 
} 

与您的应用程序的好运。完成后我会很乐意看到它。

编辑:我加入了一些匹配的字符串为这个,因为它是一个很酷的功能和更多的人可能要使用此技术的东西,他们想做的事。这些都是我找了下东西,(不成功)让我知道是否有人想到更多。

自定义URL/URI处理器
定制模式程序
注册表网址程序
手柄网页链接URL从
推出的应用程序我得到了一些非常有趣的结果(虽然我还没有尝试过

1

我已经研究过你曾经问过的一些问题,但从未发现任何工作良好的东西。最终如果你的目标是完全定制你的桌面,我想你可以通过研究类似的结果得到类似的结果:http://rainmeter.net/RainCMS/http://kaelri.deviantart.com/art/Enigma-103823591 Lifehacker有大量的链接/教程来说明如何让它全部运行。在桌面上使用HTML时,我能够获得桌面运行,远远超过了我的目标。

1

的一种方式它已经很多年了,现在还不能确认它仍然可以在现代操作系统和现代Flash播放器上工作)是使用一个运行闪存swf文件的活动桌面页面,该文件包含我创建的用户界面和(当时我是使用它)可以从swf内启动程序。

1

我在网吧中运行了一个安装程序,每个桌面都通过运行Flash应用程序的活动桌面进行控制。使用python编写的迷你网络服务器处理启动和关闭操作。操作系统是XP。

我的经验是活动桌面不可靠。它可怕地泄漏内存并定期崩溃。他们可能已经修正了它后来的版本,但由于几乎没有使用它,我怀疑已经花费了很大的努力去修复它明显的片状。