自定義協議的注冊及程序示例(C#)
在此,以添加"aricc”協議為例。
一、首先,編寫一個支持aricc協議的程序。我們就使用C#來寫一個示例程序吧。
1、新建一個windows應用程序。
2、在Form窗體上添加一個TextBox控件。
3、修改Form.cs代碼為如下所示:
public partial class Form1 : Form
{
public string cmd;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = this.cmd;
}
}
{
public string cmd;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = this.cmd;
}
}
4、修改Program.cs中的主入口函數
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 mainForm = new Form1();
if (args.Length > 0)
{
mainForm.cmd = args[0];
}
Application.Run(mainForm);
}
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form1 mainForm = new Form1();
if (args.Length > 0)
{
mainForm.cmd = args[0];
}
Application.Run(mainForm);
}
PS:以上的目的就是讓winform程序支持命令行參數。為了更直觀的看到測試效果,我們在Form的Load事件中把接收到的參數顯示在了一個TextBox中。僅此而已。
假設我們生成的程序為aricc.exe 。后面會用到。
二、在注冊表中注冊要使用的自定義協議。在此,以添加“aricc”協議為例。
1、在HKEY_CLASSES_ROOT下添加項aricc.
2、修改aricc項下的"(默認)"鍵值為"URL:自定義協議"。這部分可以自己隨便寫。
3、在aricc項下再添加一個鍵值"URL Protocol",值隨便。
4、在aricc項下新建項"shell"
5、在shell項下新建項"open"
6、在open項下新建項"command"
7、修改command項的默認鍵值為(此處包含引號) "C:\Path\aricc.exe" "%1"
到此自定義協議注冊完畢。
三、測試。
1、打開記事本,輸入以下代碼,并保存為test.html
<a href="aricc://TestCommandLine">點擊這里啟動程序</a>
2、雙擊上面的html文件,以在瀏覽器中打開。
3、點擊頁面中的鏈接。
4、你發現剛才寫的程序運行了。并且TextBox中顯示 "aricc://TestCommandLine/"
To 小石:希望對你有所幫助。HOHO

浙公網安備 33010602011771號