源码src下载地址:http://download.csdn.net/detail/testcs_dn/5137650
昨天想实现一个小功能,就是把正在浏览的某网页添加到收藏夹中。以前在页面直接用JAVASCRIPT调用一个方法就搞定了,现在我是想用WINFORM来实现,我自己找了一下没有看到相关的方法(可能找的不仔细)。于是想了一下决定自己实现算了。
完成这个功能主要是两步,首先要取得系统用户的收藏夹目录,第二是要根据获得页面地址在收藏夹目录创建一个快捷方式。
要获得收藏加目录我们可以用GetFolderPath方法来完成,代码如下
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。添加到收藏夹方法如下“
/// <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。