First thing that you will notice when starting Visual Studio 2012 RC is that things got slower. It is not as bad as Eclipse but it is definitely not as speedy as Visual Studio 2010. Second thing you will notice is SCREAMING CAPITAL LETTERS in menu. This change was done in desire to Metro style everything and increase visibility. I can confirm success since it sticks out like a sore thumb.
Fortunately, once you get into editor, everything gets better. There are no major changes for users for old Visual Studio but evolution steps are visible. Find/Replace got major overhaul. Coloring is improved a bit. Pinning files is nice touch. That sums most of it. It was best editor and it remained as such.
Solution window now shows preview when you go through your files so just browsing around saves you a click or two. Beneath each item there is small class explorer. While this might works for small project, I have doubts that it will be usable on anything larger. But I give it a green light since it stays out of your way.
Beautiful change is that every new project automaticaly gets compiled for Any CPU. This is more than welcome change especialy considering utter stupidity from Visual Studio 2010. I just hope that Microsoft keeps it this way. Whoever is incapable of 64-bit programming these days should probably stick to COBOL.
Speaking of utter stupidities, there were rumors that Express editions will not support proper application development but only Metro subset. While I am not against Metro as such, I consider decision to remove Windows application development as good as Windows Phone is. Or, in other words, it might seem logical in head of some manager but in real life there is no chance of this working.
I see Visual Studio Express as a gateway drug toward other, more powerful, editions. Crippling it will just lead to folks staying on perfectly good Visual Studio 2010. Not everybody will have Windows 8 nor care about them. Since I schedule posts few days/weeks in advance, original post had continued rant here. However, there are still some smart guys in Microsoft so desktop application development is still with us in Express.
If I read things correctly it gets even better. It seems that unit testing and source control is now part of Express edition. That were the only two things missing! Now I am all wired up for Express to come. Judging from experience I should probably tone it down unless Microsoft management decides to take some/all stuff away.
All things considered, I am happy with this edition. It is stable, it has no major issues and it is completely compatible with Visual Studio 2010. For most time it feels like Visual Studio 2010 SP2. Try it out.
If you are using InnoSetup for your installation needs you might be familiar with AppMutex parameter. You just give it SomeUniqueValue and make sure that Mutex with same value is created within your application. That way setup will warn you if your application is already running. Useful function indeed.
And this code will work if you deal with single user. In multi-user environment this will throw UnauthorizedAccessException. Why? Because Mutex is created within current user security context by default. To have behavior where any instance, no matter which user, will keep our Mutex alive, we need to adjust security a little.
Since making null security descriptor in .NET is real pain, we can do next best thing - give everybody an access. With slightly more code we can cover multi-user scenario.
Last week I finished my work in Virginia. Next week I have to start anew in Washington. Since that leaves one week and couple of thousand miles in between, road-trip seemed like perfect choice for wife, kids and me. How hard can it be?
One of items that I brought on trip to keep kids occupied were DVDs with Croatian cartoons and, since car did have a DVD player, third day of a trip seemed like a perfect time to introduce that possibility to kids. We hyped them a little just to bring anticipation levels to brand new high.
Daddy placed DVD into slot. Player took it and churned a little. And then threw DiscRegionError. No play for you. My kids were full of joy when I informed them that our ORIGINAL DVDs were not playable.
What is solution? Buying brand new DVDs in order to bring another boost to dying american movie industry was not really a choice. It seems that US market is quite limited when it comes to Croatian cartoons.
Another obvious one would be removing region protection. Of course this is quite illegal in US since DMCA and it’s protection circumvention clause. It is only logical that while KKK has right to freedom of speach, I would be forbidden to play my own original DVDs. Nice to see priority management in action.
And even if I was in mood for breaking law, I had no DVD media with me. We were on major interstate roads and entering a town in order to search for writtable DVD media seemed like a time wasting move. Single laptop with DVD writter would anyhow run out of battery long before I could copy them all.
I just gave up. Kids had more fun with their toys and we all learned valuable lesson. If I have only brought pirated DVDs I would not have this issue.
One personal annoyance is finally fixed. It was always difficult for me to find auto-mounted disks. I auto-mount them right after installation and then, month later, I cannot find where they are exactly. Now all those disks will be added to list of recently used files.
With that sorted out I proceeded with adding taskbar progress for creation of fixed drive. Funny thing that someone who wrote how easy adding it to your application can be took sweet time to do it himself. Regardless of shame, now operation progress can be checked with just quick taskbar glance.
For detail-obsessed there is parsing of dynamic disk header. Not much, but it will make someone happy.
Of course there was some generic bug bashing but let’s not get into it.