昨天想实现一个小功能,就是把正在浏览的某网页添加到收藏夹中。以前在页面直接用JAVASCRIPT调用一个方法就搞定了,现在我是想用WINFORM来实现,我自己找了一下没有看到相关的方法(可能找的不仔细)。于是想了一下决定自己实现算了。
完成这个功能主要是两步,首先要取得系统用户的收藏夹目录,第二是要根据获得页面地址在收藏夹目录创建一个快捷方式。
要获得收藏加目录我们可以用GetFolderPath方法来完成,代码如下
<pre class="brush:c#;toolbar:false;">private void button1_Click(object sender, EventArgs e) { //string path=Environment.GetFolderPath(System.Environment.SpecialFolder.Favorites); //要创建快捷方式需要用到IWshRuntimeLibrary命名空间,在这里我们要USING一下。 //并在引用里添加一个COM,windows script host object model。 addFavorites("http://blog.csdn.net/testcs_dn", "初学VC记录点滴"); MessageBox.Show("添加成功!"); }
要创建快捷方式需要用到IWshRuntimeLibrary命名空间,在这里我们要USING一下。并在引用里添加一个COM,windows script host object model。添加到收藏夹方法如下“
<pre class="brush:c#;toolbar:false;">/// <summary> /// //添加到收藏夹方法 /// </summary> /// <param name="url"></param> /// <param name="filename"></param> /// <param name="savepath"></param> public void addFavorites(string url,string filename,string savepath = null) { if (string.IsNullOrWhiteSpace(savepath)) { savepath = "Favorites"; } string path=Environment.GetFolderPath(System.Environment.SpecialFolder.Favorites); if(!System.IO.File.Exists(path+"\\"+filename+savepath+".url")) { IWshShell_Class shell = new IWshShell_ClassClass(); IWshURLShortcut shortcut=null; if(savepath=="Favorites") { shortcut = shell.CreateShortcut(Environment.GetFolderPath(System.Environment.SpecialFolder.Favorites)+"\\"+filename+".url") as IWshURLShortcut; } else { shortcut = shell.CreateShortcut(Environment.GetFolderPath(System.Environment.SpecialFolder.Favorites)+"\\"+savepath+"\\"+filename+".url") as IWshURLShortcut; } shortcut.TargetPath = url; shortcut.Save(); } }
其中URL是你要保存网页的路径,filename是生成快捷方式的名称,savepath是在收藏夹中保存在哪个目录。
效果:
顺便想提个问题,有谁知道如何得到AxWebBrowser对象中statustext。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!