Click here to Skip to main content
15,885,767 members
Articles / Programming Languages / Visual Basic
Article

A Utility to Convert VS.NET 2003 Project Files

Rate me:
Please Sign up or sign in to vote.
4.91/5 (123 votes)
14 Mar 20042 min read 876.1K   23.1K   135   99
This utility converts projects and solutions from VS.NET 7.0 to VS.NET 7.1 and vice versa.

Image 1

Introduction

I decided to create a utility that converts projects from the new Visual Studio .NET 2003 (codename "Everett") to Visual Studio .NET 2002. This is because in my experience I was working with both and found it hard to manually convert the projects and it often introduced problems, so I made an automated tool to do this job for me. So, all who are having the same difficulty, this tool is for you.

I've included full source code so you can see how I've done it and also so you can customize the tool to fit your own needs. As of March 12, 2004, I have updated the original VSConvert with some minor changes. Version 2.0 detects read-only files and also warns the user about losing .NET references when converting Managed C++ projects.

How I did it

So, you may ask, "How did you know how to convert the project files?" Here is a step-by-step description of the changes that happen when you convert a project from VS 7.1 to VS 7.0.

  1. In SLN files, the 8.0 must be replaced with 7.0.
  2. In vcproj files (and only vcproj), the 7.10 part must be replaced by 7.0. Note: The <References> portion of MC++ projects will be incompatible with VS.NET 2002 since it uses #using statements from 'stdafx.h'.
  3. In VB.NET or C# project files, 7.10.3077 is replaced with 7.0.9466.
  4. Also in VB.NET and C# projects, the schema version 2.0 should be replaced with 1.0.
  5. In RESX files, the types declared are 1.0.5000 and must be replaced with 1.0.3300.
  6. Again, in RESX files (binary streams), the base-64 encoded part that describes the version of the stream must also change from LjAuNTAw to LjAuMzMw (basically base-64-encoded versions of 1.0.5000 and 1.0.3300 respectively)

To convert from VS.NET 2002 to VS.NET 2003, just apply this process backwards.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Web Developer
Canada Canada
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.
This is a Organisation

1 members

Comments and Discussions

 
Generaldownload Pin
Wes Aday20-Jun-05 4:30
professionalWes Aday20-Jun-05 4:30 
QuestionVB 6.0 --&gt; VB.NET2002 ?? Pin
Yevets6-Apr-05 0:31
sussYevets6-Apr-05 0:31 
AnswerRe: VB 6.0 --&gt; VB.NET2002 ?? Pin
jfk9129-Jul-05 6:05
jfk9129-Jul-05 6:05 
GeneralRe: VB 6.0 --&gt; VB.NET2002 ?? Pin
TeoMan17-May-06 23:04
TeoMan17-May-06 23:04 
GeneralYou are a genious! Pin
vhof15-Feb-05 21:39
vhof15-Feb-05 21:39 
GeneralI get &quot;Project &quot;C:\FormsApp&quot; failed to open Pin
Member 157545227-Jan-05 14:18
Member 157545227-Jan-05 14:18 
GeneralWorked Great! Pin
brianjep14-Dec-04 6:09
brianjep14-Dec-04 6:09 
Generalconverted successfully but SLN version still sayin 7.10 Pin
Arch-Angel1-Dec-04 12:59
Arch-Angel1-Dec-04 12:59 
I used the converter to change a SLN file from 2003 to 2002 (7.1 to 7.0) but when i try to open the project i get an error saying that the file version is still 7.10 and 7.0 required.

Before the convert or if i convert back, it simply says that it is a wrong type of solution file.

Did i miss something? Is there somewhere i can manually change the version after i convert?

Thanks.
QuestionStdafx.h? Problem? Pin
Chlavista2-Sep-04 5:24
Chlavista2-Sep-04 5:24 
GeneralUtility works, but sln will not open. Pin
goblin465-Aug-04 9:30
goblin465-Aug-04 9:30 
GeneralRe: Utility works, but sln will not open. Pin
Toolmaker12-Aug-04 9:57
Toolmaker12-Aug-04 9:57 
GeneralVS.NET 2005 Pin
vquillet4-Aug-04 10:26
vquillet4-Aug-04 10:26 
GeneralRe: VS.NET 2005 Pin
Veener21-Oct-04 1:57
Veener21-Oct-04 1:57 
GeneralRe: VS.NET 2005 Pin
Anonymous7-Sep-05 14:35
Anonymous7-Sep-05 14:35 
GeneralRe: VS.NET 2005 Pin
timr20043-Nov-05 4:52
timr20043-Nov-05 4:52 
GeneralRe: VS.NET 2005 Pin
ziggyware30-Dec-05 12:57
ziggyware30-Dec-05 12:57 
GeneralRe: VS.NET 2005 Pin
kennster21-Feb-06 2:48
kennster21-Feb-06 2:48 
GeneralRe: VS.NET 2005 Pin
VVHH20028-May-06 7:34
VVHH20028-May-06 7:34 
GeneralRe: VS.NET 2005 Pin
TorontoSkidder3-Mar-09 14:16
TorontoSkidder3-Mar-09 14:16 
GeneralRe: VS.NET 2005 Pin
scatha26-Mar-06 23:39
scatha26-Mar-06 23:39 
GeneralRe: VS.NET 2005 Pin
andrewcates17-May-06 13:50
andrewcates17-May-06 13:50 
GeneralRe: VS.NET 2005 Pin
FocusedWolf24-Mar-06 4:05
FocusedWolf24-Mar-06 4:05 
GeneralRe: VS.NET 2005 Pin
andrewcates29-May-06 10:36
andrewcates29-May-06 10:36 
GeneralI cannot run this utilit under 2003 Server Pin
hardking28-Jun-04 15:55
hardking28-Jun-04 15:55 
GeneralCan't recursively choose directories anymmore Pin
diehardii14-Apr-04 9:21
diehardii14-Apr-04 9:21 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.