Click here to Skip to main content
15,892,746 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
See more:
Good morning. I'm in a difficult situation and I'm desperate for help.
I've just been assigned a task for which I'm unqualified, and I have no idea where to begin. My expertise is in C++, and my development tool for nearly 20 years has been Visual Studio V6.0. So naturally, in the tradition of assigning blind men to be snipers and deaf men to work the radios, my management has directed me to take a C# project that was developed under Visual Studio .NET 2003, and convert it for maintenance and continued development under Visual Studio .NET 2010.

I've installed VS.NET 2010, fired it up, and tried to open the project's solution. I was immediately told that it had to be converted. So I ran the Solution Converter, which gave me one hell of a lot of warnings, mainly about unspecified differences between .NET V2.0 and .NET V4.0. When I asked VS.NET 2010 to build the converted solution, it reported a slew of unresolved-external-reference errors, all of which pointed to a symbol named: "?.cctor@@$$FYMXXZ"

Needless to say, no such symbol, nor anything even close to it, appears in the source files flagged with that error. My questions are twofold:
1. Where should I look to begin investigating this problem?
2. Is there any usable documentation of any sort about how to perform conversions between the various editions of VS.NET?

Thanks in advance.

ADDENDUM: Here are some of the warnings I get from the Solution Converter:

1. "Your project is targeting .NET Framework 2.0 or 3.0. If your project uses assemblies requiring a newer .NET Framework, your project will fail to build. You can change the .NET Framework by clicking Properties on the project menu and then selecting a new version in the .NET Framework dropdown box."
2. "Attribute 'CopyLocalDependencies' of 'AssemblyReference' is not supported in this version and has been removed during conversion."
3. "Attribute 'UseDependenciesInBuild' of 'AssemblyReference' is not supported in this version and has been removed during conversion."
4. "$(TargetPath) for a DLL does not match the Linker's OutputFile property value in project configuration 'Release|Win32'. This may cause your project to build incorrectly." (I should mention that the DLL for which that warning occurs is built from C++ code.)
Posted
Updated 13-Jun-11 4:53am
v2

Your code probably utilizes one or more obfuscated 3rd party libraries, and maybe even some native-code DLLs. Are you sure you have all of the files referenced by your application? What do you mean by "unspecified differences between 2.0 and 4.0? Can you supply one of the warnings you're getting? (Just edit your original question and add the warning there.)
 
Share this answer
 
v2
This guide[^] may be helpful and addresses at least some of your issues.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900