昨天想實現一個小功能,就是把正在瀏覽的某網頁添加到收藏夾中。以前在頁面直接用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。