Iterating Accross A Users Links in c#

One thing I have been looking at recently is how to access the Users Internet Explorer Favorites.I managed to find two resources somewhere, one was c# to find the favorites and the other was VB.Net code which parse the *.Url file.I have the code below (tv is a Tree view on a form):…DirectoryInfo di = new DirectoryInfo( System.Environment.GetFolderPath( Environment.SpecialFolder.Favorites ));EnumerateFavorites(di);… The above code will get the directory information about a users Favorites.


This content originally appeared on Modern Web Development with Chrome and was authored by Paul Kinlan

<p>One thing I have been looking at recently is how to access the Users Internet Explorer Favorites.<p />I managed to find two resources somewhere, one was c# to find the favorites and the other was VB.Net code which parse the *.Url file.<p />I have the code below (tv is a Tree view on a form):<div class="CodeRay"></p> <div class="code"><pre>...DirectoryInfo di = new DirectoryInfo( System.Environment.GetFolderPath( Environment.SpecialFolder.Favorites ));EnumerateFavorites(di);...</pre></div> </div> <p />The above code will get the directory information about a users Favorites. The Static vairable "Environment.SpecialFolder" contains some other very usefull locations. My Computer, My Network etc.... I think :)<p /><div class="CodeRay"> <div class="code"><pre>private void EnumerateFavorites(DirectoryInfo dii){ tv.Nodes.Add(dii.FullName); int i = tv.Nodes.Count-1; foreach(DirectoryInfo dI in dii.GetDirectories()) { EnumerateFavorites(dI); } foreach(FileInfo fi in dii.GetFiles()) { string URL = GetUrlFromLinkFile(fi.FullName); tv.Nodes[i].Nodes.Add(URL); }}private string GetUrlFromLinkFile(string file){ StreamReader sr = null; string content; if(!file.EndsWith('.url')) return ''; try { sr = new StreamReader(file); content = sr.ReadToEnd(); } finally { if(sr != null) sr.Close(); } if(content.Length == 0) return ''; int startI = content.IndexOf('URL='); if(startI == -1) return ''; startI += 4; int endI = content.IndexOf( Environment.NewLine, startI + 1); return content.Substring(startI, endI -startI);}</pre></div> </div> <p />What appears above is code that will Recursivly iterate into any Folders that the user has defined for their Favorites. Some futher code will also parse the .URL.<p />The *.URL file is a basic text file (much like the AutoRun.inf file). One line starts URL=kinlan.co.uk etc. The function <span style="color: #3366ff;">GetUrlFromLinkFile</span><span style="color: #000000;">, parse this information and returns it as a string.</span><p />If I find the resources where I got this from I will give the credit where it is due.<p />One thing that is not available in the *.URL is the text that appears in the Internet Explorer Favorites menu. For example [www.microsoft.com](http://www.microsoft.com) might appear as "Microsoft" in the Favorite menu. If anyone knows how to do this in c# let me know (I would be greatful). I have a feeling that it might be something to do with IShellLink, but I am not too sure, nor am I any good with Interop [at the moment, I will have to learn]


This content originally appeared on Modern Web Development with Chrome and was authored by Paul Kinlan


Print Share Comment Cite Upload Translate Updates
APA

Paul Kinlan | Sciencx (2005-04-17T00:00:00+00:00) Iterating Accross A Users Links in c#. Retrieved from https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/

MLA
" » Iterating Accross A Users Links in c#." Paul Kinlan | Sciencx - Sunday April 17, 2005, https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/
HARVARD
Paul Kinlan | Sciencx Sunday April 17, 2005 » Iterating Accross A Users Links in c#., viewed ,<https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/>
VANCOUVER
Paul Kinlan | Sciencx - » Iterating Accross A Users Links in c#. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/
CHICAGO
" » Iterating Accross A Users Links in c#." Paul Kinlan | Sciencx - Accessed . https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/
IEEE
" » Iterating Accross A Users Links in c#." Paul Kinlan | Sciencx [Online]. Available: https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/. [Accessed: ]
rf:citation
» Iterating Accross A Users Links in c# | Paul Kinlan | Sciencx | https://www.scien.cx/2005/04/17/iterating-accross-a-users-links-in-c/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.