我很好奇PPStream等軟體,是怎麼樣做到點擊IE的超連結,就可以開啟本身的程式,上線找了一下發現原來簡單到暴。
用Regedit加上下列機碼就可以了。
HKEY_CLASSES_ROOT
機碼部份
HKEY_CLASSES_ROOT
這樣在IE中點擊 UPT 開頭的就會執行我的Console程式了,如 UPT:hwade.cnblogs.com。
用Regedit加上下列機碼就可以了。
- URL Protocol Name
(Default) = "URL Protocol Discription"
URL Protocol = ""- DefaultIcon
(Default) = "exe path"
- shell
- open
- command
(Default) = "exe path" "%1"
- command
- open
- DefaultIcon
機碼部份
- UTP
- (Default) = "URL Protocol Test"
URL Protocol = ""- DefaultIcon
(Default) = "C:\URLProtocolTest.exe"
- shell
- open
- command
(Default) = "C:\URLProtocolTest.exe" "%1"
- command
- open
- DefaultIcon
namespace UrlProtocolTest
{
class Program
{
static void Main(string[] args)
{
if(args != null)
{
Console.WriteLine(String.Join(",", args));
}
Console.Read();
}
}
}
{
class Program
{
static void Main(string[] args)
{
if(args != null)
{
Console.WriteLine(String.Join(",", args));
}
Console.Read();
}
}
}
這樣在IE中點擊 UPT 開頭的就會執行我的Console程式了,如 UPT:hwade.cnblogs.com。
自訂URL Protocol在IE實踐就如上例的簡單,但FireFox看文件感覺很複雜,可能是我不熟FireFox編程吧,不過真的自訂了URL Protocol還要寫一支安裝檔,請他們(客戶)下載安裝,也挺累的。
參考網站
- Registering an Application to a URL Protocol
- Register a Custom URL Protocol Handler
- Custom URL Protocol Handlers
- Creating a new protocol for Mozilla Firefox in C++