|
Apparently, code built with VS2012 will not run on Windows XP. So our native C++/Win32/MFC code we're building today on VS2010 (which runs great on XP) will no longer run on XP if recompiled under VS2012 due to runtime library dependencies. We still have customers running XP so VS2012 just isn't an option.
I am sort of glad not to have jumped on every developer fad they put out only to later relatively quickly obsolete it and drop it for the next big thing when all along native C++/Win32/MFC continues to work very well and get the job done nicely and its just keeps on going without threat of them trying to kill it for some new fancy fad
modified 25-Aug-12 20:06pm.
|
|
|
|
|
You can compile with VS2010 plateform -tools and runtime lib- and get all the goodies from VS 2012.
I was using C++/CLI, I assume it is the same with C++. Search for "Toolset" in my last article.
No hack, it is just an option in your project properties.
|
|
|
|
|
But if we're still using VS2010 tools in the VS2012 IDE then the question is, what's new in the VS2012 IDE which is worth upgrading? I've done some light reading on it and I'm not seeing a ton of really substantive improvements for native/C++ development (not C++/CLI). The latest msdn mag just came and I flipped through the VS2012 stuff and it looks like mostly fluff to me (again coming from the perspective of a native/C++ developer not making web apps or .NET code).
I think upgrading for the language stuff would be nice, but with dropping XP support it just isn't worth it. Can't afford to have code suddenly overnight not work on customer XP machines where it worked before just due to some arbitrary change by MS.
Look and feel of the IDE doesn't seem all that impressive imo / we have Visual Assist X which pretty much does everything needed so even the intellisense updates don't seem all that impressive.
I'm sure upgrading is inevitable eventually, but not before we can be assured our customers don't need to run on XP.
|
|
|
|
|
There is only one improvement that made me take VS2012, but without it I would not bother developping in C++/CLI :
Intellisense
They dropped the support for intellisense in VS 2010. (just for C++/CLI not C++ native)
The other great thing come from C++ 11 support. Namely the auto keyword (same thing as the var in .NET), and closures (what we call lambda expressions).
You can compile with the VS 2010 toolset, so you should not have any problem.
Anyway, I'm not a native developer, more a .NET one, and the core thing for me was intellisense with C++/CLI. But I'm also not the type of person that like to change tools just because that's new.
|
|
|
|
|
I didn't realize Intellisense was not avail for non-native code. Are you aware of Visual Assist X from Whole Tomato? Thats a great addon and does a much better job than the built-in stuff (though it does use the intellisense database I think).
The auto keyword is already provided in VS2010, but there are other parts of C++ 11 not in VS2010 (perhaps lambda expressions).
I've been using auto in VS2010 for awhile and its definitely a nice feature. I haven't gotten into lambda expressions yet -- in one way they rub me the wrong way. They seem like a nice abbreviation, but sometimes I'd prefer to more explicitly spell things out for code readability.
Sounds like we have similar views on the new shiny IDE, but we're just in different areas (native vs. CLI). I can definitely see upgrading if you don't have intellisense at all in VS2010. Seems odd they would have dropped something a fundamental as that.
|
|
|
|
|
Yes, the C++ team partially explained their failure with vs 2010. They started a refactoring that was too big for them. I will try the Visual Assist X stuff.
For .NET developers, closure in C++ are a very cool feature because we are used to them.
int main(int argc, char* argv[])
{
int b = 3;
auto f = [&]() {printf("Increment B"); b++;};
f();
printf("b : %d",b);
return 0;
}
You can see that I defined a function pointer without any typedef and stored it in f.
The lambda has access to b. (closure)
This will print "Increment B 4".
You can specify explicitely which local variable you want to capture.
In this example [&] means : caputre all locals variable by reference. I could have captured them by value.
It makes windows function with callback a little easier to write, because we don't have to pass arguments in the "state" argument anymore.
|
|
|
|
|
yes, good point. with closure you do get some very nice simplifications and as you said aren't passing state around.
|
|
|
|
|
... I expect to upgrade to VS 12 along with Win8 for workstation(s) and Windows Server 2012/SQL Server 2012/TFS for server(s) ... all this presumably sometime towards end of this year. Will use VS 2010 side-by-side until all my projects are eventually upgraded, which usually takes 1-2 years (depending on upgrades due to bugs new user requests )
modified 19-Nov-18 21:01pm.
|
|
|
|
|
Seeing as my job consists primarily of maintaing Windows Mobile/Windows CE clients, and the Windows Mobile SDK doesn't even run on 2010, I doubt VERY much it'll work on 12!
Still very bitter about Microsoft killing Windows Mobile in the enterprise, but such is life.... :-P
|
|
|
|
|
I'm not someone that like to test new and shiny things, if I don't see its value.
But I recently had to do interop stuff, and I took a try to VS2012 because it improved the unmanaged side.
No deception, good stuff, do what it needs to do. Some bugs here and there, but the transition went smoothly.
For full C# project, I am always using VS2010 though.
|
|
|
|
|
After all, I am Windows 8 app developer so I am using visual studio 2012
|
|
|
|
|
My development machine runs Vista, which is unsupported for some bizarre reason.
|
|
|
|
|
Our main product is a Visual Studio/Eclipse plug-in, so we obviously have to support VS2012. I wrote about some of the hoops we've had to jump through just to support the VS2012 dark theme[^] recently, but that's just the start of it.
However, we're not considering moving our own code from VS2008 (we skipped VS2010 due to its bugs and sluggishness) to VS2012 just yet - for one thing we still have to support devs using Windows XP, and for another we're not sure if we could cope with staring at that amount of greyness all day.
C++ 11 support is a big, big draw though (I for one am heartily sick of C++ '03 code). If we can't resist it and VS2012 doesn't fit the bill adopting the Intel C++ compiler in VS2008 is the other logical choice.
Anna
Tech Blog | Visual Lint
"Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"
|
|
|
|
|
Anna-Jayne Metcalfe wrote: and for another we're not sure if we could cope with staring at that amount of greyness all day. Easy fix: Use the dark theme.
The United States invariably does the right thing, after having exhausted every other alternative. -Winston Churchill
America is the only country that went from barbarism to decadence without civilization in between. -Oscar Wilde
Wow, even the French showed a little more spine than that before they got their sh*t pushed in.[^] -Colin Mullikin
|
|
|
|
|
Ah but that's just a different shade of grey.
Seriously though - if we do decide to use 2012 it would make more sense to use dark as default anyway - to support requires a pile of custom drawing code which isn't active under the default OS theme (see the link in the original post), and the more we use it, the more bugs we'll catch earlier.
But it's a moot point for the moment, as we have to support customers on XP & Win2k3. One of our mobile support machines also runs XP, so that would also have to be replaced to use 2012.
Anna
Tech Blog | Visual Lint
"Why would anyone prefer to wield a weapon that takes both hands at once, when they could use a lighter (and obviously superior) weapon that allows you to wield multiple ones at a time, and thus supports multi-paradigm carnage?"
|
|
|
|
|
TBH Notepad++ does 90% if what I need and for the rest I use Netbeans as it's mostly Java and PHP these days for me.
Panic, Chaos, Destruction. My work here is done.
Drink. Get drunk. Fall over - P O'H
OK, I will win to day or my name isn't Ethel Crudacre! - DD Ethel Crudacre
I cannot live by bread alone. Bacon and ketchup are needed as well. - Trollslayer
Have a bit more patience with newbies. Of course some of them act dumb - they're often *students*, for heaven's sake - Terry Pratchett
|
|
|
|
|
On my company laptop I have 2010 but I don't really use it.
I'm almost all the time working on a customer premises and using whatever they use there.
I really don't care... Renewing software licenses (specially from M$) is usually too expensive for the amount of benefit you actually take from it.
I've been using all kind of stuff for too many years now... I'm in a phase where I just need to know the rules of the game and I'll just play it!
|
|
|
|
|
AlexCode wrote: I'm almost all the time working on a customer premises and using whatever they use there.
I really don't care... Renewing software licenses (specially from M$) is usually too expensive for the amount of benefit you actually take from it.
You mean you don't care "as long as it's some version of the VS-IDE"? Just try to create a complex WinForm under MonoDevelop, or edit an ASP.NET page using nano or vim.
If I compare the VS-IDE with MonoDevelop, I can only point out that the VS-IDE is loaded with features that improve one's productivity - from the Forms-designer up to the editor for the Assembly.cs file; it's all there.
Then you fire up MonoDevelop, add a breakpoint to a console-app in VB.NET; and start to cry. Not that MonoDevelop is bad, it's a great product - but it's no Visual Studio.
Bastard Programmer from Hell
if you can't read my code, try converting it here[^]
|
|
|
|
|
I have this rule in life that eases the way I handle things, it's called the
"I don't care" rule.
This rule has only one amendment:
It's only applicable if you can't do anything about it.
Basically if I get to a customer that only have Linux workstations and everyone uses Vi or Vim I have to evaluate:
1. Can I do anything about it?
NO? ... So I don't care...
|
|
|
|
|
Pragmatic and effective! I'll give a try next time
|
|
|
|
|
Eddy Vluggen wrote: Just try to create a complex WinForm under MonoDevelop, or edit an
ASP.NET page using nano or vim.
Don't know much about MonoDevelop and WinForms, but I did edit a few ASP.NET pages with vim and even wrote one from scratch.
|
|
|
|
|
Moving to another VS would mean going through the IT purchasing process. No piece of software is worth that much misery. I'll move up when my machine finally dies under the weight of crap installed by IT and I have to replace it.
|
|
|
|
|
it hasn't even been officially released yet!
and people make fun of Mac fanbois...
|
|
|
|
|
Chris Losinger wrote: it hasn't even been officially released yet!
Details, details!
|
|
|
|
|
Yes it has - It's been available for download on MSDN for almost a week now...
Why can't I be applicable like John? - Me, April 2011 ----- Beidh ceol, caint agus craic againn - Seán Bán Breathnach ----- Da mihi sis crustum Etruscum cum omnibus in eo! ----- Just because a thing is new don’t mean that it’s better - Will Rogers, September 4, 1932
|
|
|
|