Introduction
This little tool allows you to edit the "Recent Projects" list on the Visual Studio start page.
The project is based on earlier versions designed by peterchen, Josh Beach, Nelviticus.The code was made from zero but taking the concept of the above codes.
The reason for this update is to clarify, classify, and guide the application code written in the object-oriented programming.
I have simplified many parts of the code, such as the management of the MRU list. Now everything is contained in a class, and data collected from the Windows registry are standardized structures. This time around I'm manipulating, and I can retrieve the object.
There was not much to change, as there was a good work done by other programmers. I changed several things, among them, now if you try to explore a project that does not exist, this tells you to and do not open a folder by default
Using the code
To use this new class that I designed and can begin to manage the list of recent projects, we simply create a new instance of the class VS_MRU_Manager.
The class offers the following methods to manage lists:
Get_MRU_List:This method returns a list of objects of type List <structVS_MRU>
Get_VS_Versions: This method returns the list of versions of Visual Studio installed on this machine.
Delete_MRU_Project: This method eliminates the desired project from the list of recent projects.
Delete_All_MRU_Projects: This method eliminates all the projects on the list of recent projects.
Save_MRU_Project_List: This method saves and rearranges the windows registry KeyName the list of projects specified in the parameters of the function.
Delete_Orphan_MRU_Projects: This method removes all orphaned projects on the list of recent projects.
Standard structures for information management within the program:
public struct structVS_Version
{
public string Name;
public string Version;
public string Year;
public string RegKeyLocation;
}
public struct structVS_MRU
{
public string ProjectName;
public string ProjectPath;
}
History
June 5, 2008 - peterchen
- Fixed: Save failed when Visual Studio 2008 was not installed
- Added: Additional keyboard support
Shift+Up/Down to move an item, Del to remove, Num-+ to add an existing project/solution - Changed selection change after Delete to match my personal preferences
Oct 29, 2009 - Nelviticus
- Changed: Uses
ListView
instead of ListBox
for better display of file name and directory - much easier to read - Added: Now supports Visual Studio 2010. You can add support for other versions by editing the config file in your installation directory (if using the installer) or editing the project settings (if building the project yourself). No need to add a new
AddVersion()
call and re-build the application
April 22, 2010 - Nelviticus
- Fixed: Browsing to Visual Studio 2010 projects by double-clicking entries or clicking the 'Explorer' button now works. VS2010 uses environment variables in the file paths it stores in the registry, but because the
Process.Start
method doesn't expand these, we have to do it manually.
October 2, 2010 - Alberto Molero
- Can't add project files that already on the list.
Automatic update MRU project list when you delete the project, adding a new project to the list, and remove orphaned projects.
A specific class to manage everything related to the lists of recent projects.
Standardization of information extracted from the Windows registry by using structures.
Peter is tired of being called "Mr. Chen", even so certain individuals insist on it. No, he's not chinese.
Peter has seen lots of boxes you youngsters wouldn't even accept as calculators. He is proud of having visited the insides of a 16 Bit Machine.
In his spare time he ponders new ways of turning groceries into biohazards, or tries to coax South American officials to add some stamps to his passport.
Beyond these trivialities Peter works for
Klippel[
^], a small german company that wants to make mankind happier by selling them novel loudspeaker measurement equipment.
Where are you from?[^]
Please, if you are using one of my articles for anything, just leave me a comment. Seeing that this stuff is actually useful to someone is what keeps me posting and updating them.
Should you happen to not like it, tell me, too
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.