Jump to content

  • Log In with Google      Sign In   
  • Create Account

Visual Studio Express 2012 Yay


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
57 replies to this topic

#21 achild   Crossbones+   -  Reputation: 1946

Like
0Likes
Like

Posted 01 October 2012 - 07:05 AM

Well I've been messing with VS2012 in Windows 7 all weekend. My main project is officially upgraded and I really like it. (Still have the old project for XP builds for now though).
- Upgrading from 2008 project was absolutely painless. A couple issues like using std::set iterators as being mutable (oops), but these were very easy to fix.
- Auto-vectorization is nice and applies itself all over the place.
- Auto-parallelization (sp?) not so much - but its requirements are much stricter. To counter, there is a super quick and easy pragma that parallelizes (SP?) practically any loop without openmp
- Adding a 64-bit build was also quite painless

Also installed Windows 8 release preview (no msdn so no RTM here)
- Dual booting with Win7 no problem.
- Not intentionally going against the grain, but as an everything-OS, I actually like it a lot.
- Installed VS2012 RC (need Win8 RTM for the official release Posted Image ) for Win8 Release Preview as well, and so far so good. It built me a demo D3D11 metro app out of the box no problem.

I honestly feel they've done a fantastic job so far.

Edited by achild, 01 October 2012 - 07:08 AM.


Sponsor:

#22 Oberon_Command   Crossbones+   -  Reputation: 1975

Like
0Likes
Like

Posted 01 October 2012 - 02:08 PM

Why does the VS express registration system keep requiring me to provide my "business" contact info when I've explicitly told the form that I'm a student and therefore those fields are meaningless? MS didn't require that I provide this info previously, why do they suddenly require it now? Also, I think the UI is ugly from what I've seen. All caps text in the menu bar, really now? Even QBasic had lower case letters in its menu bars.

I think I'll stick to VS 2010 until the interface doesn't scorch my eyes and the registration system doesn't ask me questions that don't apply to me.

Edited by Oberon_Command, 01 October 2012 - 02:16 PM.


#23 phantom   Moderators   -  Reputation: 7593

Like
0Likes
Like

Posted 01 October 2012 - 03:26 PM

I lack a link right now but there is a reg key you can set to fix the all caps menu items problem.

#24 tanzanite7   Members   -  Reputation: 1379

Like
0Likes
Like

Posted 01 October 2012 - 03:43 PM

What is really a problem is that (until now) applications compiled with VS2012 do not run on WinXP! Yes... WinXP is old and should not be supported anymore. I agree with that.

I don't. But thanks for the informative link - good to know it might be possible to target XP in the future (required bottom line for me).

#25 tom_mai78101   Members   -  Reputation: 577

Like
0Likes
Like

Posted 02 October 2012 - 05:55 AM

Now there's a pretty bad case of upgrading an old VS2008 project into VS2012.

I sense a magnificant bastard in me wanted to go look at all of the errors and just comment them out. I see errors, yet I do not know how to fix them.

Java has taken a big toll on my C++, then again, other than the basic C++ programming syntax, rememorizing the Standard Libraries is going to become a new daunting task for me.

#26 achild   Crossbones+   -  Reputation: 1946

Like
0Likes
Like

Posted 02 October 2012 - 07:06 AM

Now there's a pretty bad case of upgrading an old VS2008 project into VS2012.

The main ones I ran into were in regards to the c++ std lib. Mostly namespace issues since a lot of stuff moved from std::tr1 to just std. But I also had most of that typedef'd in a single file so it was very easy to fix the whole program. There's not really that many breaking changes - if you post a few of your errors maybe I or someone else can help and you'll see a pattern?

Don't forget most of the time fixing the first error fixes many, many errors following it because they are actually a result of the first.

#27 tom_mai78101   Members   -  Reputation: 577

Like
0Likes
Like

Posted 02 October 2012 - 11:57 AM

The main ones I ran into were in regards to the c++ std lib. Mostly namespace issues since a lot of stuff moved from std::tr1 to just std. But I also had most of that typedef'd in a single file so it was very easy to fix the whole program. There's not really that many breaking changes - if you post a few of your errors maybe I or someone else can help and you'll see a pattern?


As you say, master.

[source lang="plain"]1>------ Build started: Project: VGMTrans, Configuration: Debug Win32 ------1>mainfrm.obj : error LNK2019: unresolved external symbol "long __cdecl ATL::AtlGetCommCtrlVersion(unsigned long *,unsigned long *)" (?AtlGetCommCtrlVersion@ATL@@YAJPAK0@Z) referenced in function "bool __cdecl WTL::RunTimeHelper::IsCommCtrl6(void)" (?IsCommCtrl6@RunTimeHelper@WTL@@YA_NXZ)1>C3DSegment.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicSegment81>CDLSLoader.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicSegment81>CSegment.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicSegment81>CAPathPerformance.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicGraph1>CPortPerformance.obj : error LNK2019: unresolved external symbol _IID_IDirectMusicGraph referenced in function "public: long __thiscall directmidi::CPortPerformance::AddPortW(class directmidi::COutputPort &,unsigned long,unsigned long)" (?AddPortW@CPortPerformance@directmidi@@QAEJAAVCOutputPort@2@KK@Z)1>CDLSLoader.obj : error LNK2001: unresolved external symbol _CLSID_DirectMusicSegment1>CDLSLoader.obj : error LNK2001: unresolved external symbol _CLSID_DirectMusicLoader1>CDLSLoader.obj : error LNK2001: unresolved external symbol _GUID_DirectMusicAllTypes1>CDLSLoader.obj : error LNK2001: unresolved external symbol _GUID_StandardMIDIFile1>CDLSLoader.obj : error LNK2001: unresolved external symbol _GUID_DefaultGMCollection1>CDLSLoader.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicLoader81>CDMusicException.obj : error LNK2019: unresolved external symbol _DXGetErrorString9W@4 referenced in function "protected: void __thiscall directmidi::CDMusicException::ObtainErrorString(void)" (?ObtainErrorString@CDMusicException@directmidi@@IAEXXZ)1>CDMusicException.obj : error LNK2019: unresolved external symbol _DXGetErrorDescription9W@4 referenced in function "protected: void __thiscall directmidi::CDMusicException::ObtainErrorString(void)" (?ObtainErrorString@CDMusicException@directmidi@@IAEXXZ)1>CPerformance.obj : error LNK2001: unresolved external symbol _CLSID_DirectMusicPerformance1>CPerformance.obj : error LNK2001: unresolved external symbol _GUID_PerfMasterTempo1>CPerformance.obj : error LNK2001: unresolved external symbol _GUID_PerfMasterVolume1>CPerformance.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicPerformance81>CPerformance.obj : error LNK2001: unresolved external symbol _IID_IDirectMusicSegmentState81>CSegment.obj : error LNK2001: unresolved external symbol _GUID_ConnectToDLSCollection1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ) referenced in function "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::append(char const *,unsigned int)" (?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@PBDI@Z)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_String_base::_Xlen(void)" (?_Xlen@_String_base@std@@SAXXZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: __thiscall std::_Mutex::~_Mutex(void)" (??1_Mutex@std@@QAE@XZ) referenced in function "public: virtual __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::~basic_streambuf<char,struct std::char_traits<char> >(void)" (??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAE@XZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2001: unresolved external symbol "long const std::_BADOFF" (?_BADOFF@std@@3JB)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ) referenced in function "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > & __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::append(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,unsigned int,unsigned int)" (?append@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_String_base::_Xran(void)" (?_Xran@_String_base@std@@SAXXZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "private: static class std::locale::_Locimp * __cdecl std::locale::_Init(void)" (?_Init@locale@std@@CAPAV_Locimp@12@XZ) referenced in function "public: __thiscall std::locale::locale(void)" (??0locale@std@@QAE@XZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: __thiscall std::_Mutex::_Mutex(void)" (??0_Mutex@std@@QAE@XZ) referenced in function "protected: __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::basic_streambuf<char,struct std::char_traits<char> >(void)" (??0?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAE@XZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: void __thiscall std::_Mutex::_Lock(void)" (?_Lock@_Mutex@std@@QAEXXZ) referenced in function "public: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::_Lock(void)" (?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_Mutex::_Lock(void)" (?_Lock@_Mutex@std@@QAEXXZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: void __thiscall std::_Mutex::_Unlock(void)" (?_Unlock@_Mutex@std@@QAEXXZ) referenced in function "public: void __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::_Unlock(void)" (?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEXXZ)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "public: void __thiscall std::_Mutex::_Unlock(void)" (?_Unlock@_Mutex@std@@QAEXXZ)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "private: static void __cdecl std::locale::facet::facet_Register(class std::locale::facet *)" (?facet_Register@facet@locale@std@@CAXPAV123@@Z) referenced in function "public: void __thiscall std::locale::facet::_Register(void)" (?_Register@facet@locale@std@@QAEXXZ)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "private: static void __cdecl std::locale::facet::facet_Register(class std::locale::facet *)" (?facet_Register@facet@locale@std@@CAXPAV123@@Z)1>tinyxmld_STL.lib(tinyxml.obj) : error LNK2019: unresolved external symbol "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z) referenced in function "public: __thiscall std::_Locinfo::_Locinfo(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0_Locinfo@std@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@1@@Z)1>tinyxmld_STL.lib(tinyxmlparser.obj) : error LNK2001: unresolved external symbol "public: static void __cdecl std::_Locinfo::_Locinfo_ctor(class std::_Locinfo *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?_Locinfo_ctor@_Locinfo@std@@SAXPAV12@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@2@@Z)1>.\Debug/VGMTrans.exe : fatal error LNK1120: 27 unresolved externals========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========[/source]

The very first LNK error happens to be a legacy breaking piece of code Microsoft did for the ATL. Apparently, one of a bigger (and complicated) project I have rely on this, so it's kind of hard to fix without knowing a lot of stuffs.

I think LNK errors and whatnots are the main reasons I became more biased with Java than C++ back in 2009 ~ 2010. I felt Java has just 1 centralized libary, instead of having so many different SDK with includes and libs.

Edited by tom_mai78101, 02 October 2012 - 12:01 PM.


#28 achild   Crossbones+   -  Reputation: 1946

Like
0Likes
Like

Posted 02 October 2012 - 12:21 PM

For tinyxml, the problem is probably that tinyxmld_STL.lib was built using VS2008. You need to rebuild the lib with 2012, or just add the cpp/h files to your project.

[edit] See your atl thread for the solution there.
[edit2] Not sure about direct music. At least it's just a link problem. Are you linking dxguid.lib ??

Edited by achild, 02 October 2012 - 12:25 PM.


#29 tom_mai78101   Members   -  Reputation: 577

Like
0Likes
Like

Posted 02 October 2012 - 12:28 PM

And yes, I was about to say that I had just started reading your post. So, this is what they meant by LIB files built with older compiler cannot work with newer compilers? I now have something to do.

#30 SiCrane   Moderators   -  Reputation: 9675

Like
1Likes
Like

Posted 02 October 2012 - 03:51 PM

I lack a link right now but there is a reg key you can set to fix the all caps menu items problem.

It's in a more than a couple places now, but here's one place.

#31 Amnesty2   Members   -  Reputation: 203

Like
0Likes
Like

Posted 03 October 2012 - 12:30 AM

For anyone that don't know, if you're a college student you can go to
dreamspark dot com and download the professional edition for free and skip the express all together.

#32 Amr0   Members   -  Reputation: 1159

Like
0Likes
Like

Posted 03 October 2012 - 03:06 AM

Regarding targeting XP, I've found this: Visual C++ Team Blog - Targeting Windows XP with C++ in Visual Studio 2012. I wonder if there has been any accomplishments in this area since the post was made, or what the current situation is.

#33 tstrimple   Prime Members   -  Reputation: 1736

Like
0Likes
Like

Posted 04 October 2012 - 03:32 PM

Hmm i would move to VS2012 if they simply integrate XNA 4.0 with it (which is clearly possible).


At this point I doubt the continued support of XNA. You cannot use it for metro apps. I'm busy porting my WP7 XNA game to Metro using MonoGame.

#34 MrDaaark   Members   -  Reputation: 3555

Like
0Likes
Like

Posted 05 October 2012 - 06:26 AM

This speaks volumes with my initial impression.

Posted Image

I wish the Android SDK stuff installed this easy. *sigh* (although it probably is on Linux)

#35 tom_mai78101   Members   -  Reputation: 577

Like
0Likes
Like

Posted 05 October 2012 - 09:07 AM

I wish the Android SDK stuff installed this easy. *sigh* (although it probably is on Linux)


So true! I am already used to programming in Android, so the moment I saw this, I was like WOW...

#36 Ryan_001   Prime Members   -  Reputation: 1485

Like
0Likes
Like

Posted 05 October 2012 - 08:16 PM

So I've been trying to make a new color scheme for Visual Studio 2012 and while playing around came across 'Display Items' under the Options/Fonts and Colors/Text Editor menu that have eluded me. Anyone have any idea what "C++ User Types (Generic)", "C++ User Types (Reference Types)", and "C++ User Types (Value Types)" are referring to? The "C++ User Types" sets the color of any user defined type (class, struct, typedef, typename parameter, ect...). The other 3 seem, as far as I can tell, to do nothing. I'm also not sure how to color non-type template parameters, as well as I'm not sure what "C++ Properties" is referring to either. Anyone have any ideas?

#37 EddieV223   Members   -  Reputation: 1407

Like
0Likes
Like

Posted 06 October 2012 - 09:25 PM

So I've been trying to make a new color scheme for Visual Studio 2012 and while playing around came across 'Display Items' under the Options/Fonts and Colors/Text Editor menu that have eluded me. Anyone have any idea what "C++ User Types (Generic)", "C++ User Types (Reference Types)", and "C++ User Types (Value Types)" are referring to? The "C++ User Types" sets the color of any user defined type (class, struct, typedef, typename parameter, ect...). The other 3 seem, as far as I can tell, to do nothing. I'm also not sure how to color non-type template parameters, as well as I'm not sure what "C++ Properties" is referring to either. Anyone have any ideas?


Value and Reference are c++ managed .net types. And yep you stumbled on a well kept secret, there's far more syntax color highlighting option in there, they just default to regular black.

I think the best thing about it other than the syntax highlighting, and c++11, is that the single express IDE supports the 3 main languages, c++, c# and basic.

If this post or signature was helpful and/or constructive please give rep.

 

// C++ Video tutorials

http://www.youtube.com/watch?v=Wo60USYV9Ik

 

// Easy to learn 2D Game Library c++

SFML2.1 Download http://www.sfml-dev.org/download.php

SFML2.1 Tutorials http://www.sfml-dev.org/tutorials/2.1/

 

// SFML 2 book

http://www.amazon.com/gp/product/1849696845/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1849696845&linkCode=as2&tag=gamer2creator-20

 


#38 Cornstalks   Crossbones+   -  Reputation: 6991

Like
0Likes
Like

Posted 08 October 2012 - 07:59 PM

Does anyone else hate the new icons for Visual Studio 2012? They hurt my eyes. Overall, Visual Studio 2012 seems decent, but I shouldn't have upgraded yet because I depend on Qt, which doesn't quite yet fully support VS2012.
[ I was ninja'd 71 times before I stopped counting a long time ago ] [ f.k.a. MikeTacular ] [ My Blog ] [ SWFer: Gaplessly looped MP3s in your Flash games ]

#39 Ryan_001   Prime Members   -  Reputation: 1485

Like
0Likes
Like

Posted 08 October 2012 - 08:32 PM


So I've been trying to make a new color scheme for Visual Studio 2012 and while playing around came across 'Display Items' under the Options/Fonts and Colors/Text Editor menu that have eluded me. Anyone have any idea what "C++ User Types (Generic)", "C++ User Types (Reference Types)", and "C++ User Types (Value Types)" are referring to? The "C++ User Types" sets the color of any user defined type (class, struct, typedef, typename parameter, ect...). The other 3 seem, as far as I can tell, to do nothing. I'm also not sure how to color non-type template parameters, as well as I'm not sure what "C++ Properties" is referring to either. Anyone have any ideas?


Value and Reference are c++ managed .net types. And yep you stumbled on a well kept secret, there's far more syntax color highlighting option in there, they just default to regular black.

I think the best thing about it other than the syntax highlighting, and c++11, is that the single express IDE supports the 3 main languages, c++, c# and basic.


I see. I do like the amount of configuration to the syntax coloring they added. I just wish they had a document somewhere where they described in detail each of the elements, and their relationship/precedence to other elements. Ahh well, after a couple of days of fooling around I put together a nice color theme :)

#40 tanzanite7   Members   -  Reputation: 1379

Like
0Likes
Like

Posted 09 October 2012 - 02:26 PM

Screenshot share? :)




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS