I parked my car and started walking towards the main entrance of DeVry University.
I started a conversation with someone who looked like a student walking to the university.
“Are you here for the Cleveland WPF User Group”, I said.
I received a nod of the head, and a casual request to peek at a water bottle that read “Microsoft MVP”.
I smiled, and remembered.. Sarah is the MVP, and by extension tonight’s speaker!
That’s how I met Sarah, the presenter at Cleveland WPF User Group for the very first time. She was kind enough to permit me to blog about the recent developments at Microsoft that she covered.
Before the talk started, Eric Wise introduced Software Craftsmanship Guild, a new company that he recently launched in the North-East Ohio region. It aims to provide new job applicants the requisite skills to be adept at their work and at the same time allow enterprises to participate in his hiring network.
Check out a video of him introducing the new startup here:
Sam Nasr, friend, and organizer of the Cleveland WPF User Group and Cleveland .Net SIG, announced that we will be meeting at DeVry University from now on, and then introduced Sarah:
Next, Sarah demo’d a cool new website from Microsoft that allows the end user that has a touch enabled device to make music on the fly, all of this via Internet Explorer only:
Rest of the event I post below for those who weren’t able to make it and wish to learn about the newer technologies. As time permits, I will be editing this post to include hyperlinks, links to presentations etc. so that me or anyone at the event or anyone that missed the event can quickly reference the information:
After the talk we went to Mavis Winkles.. had a great chat with everyone!
Note: This post will be specific to Windows 7 and 32 bit applications written prior to Windows 7; but the idea pertains to pretty much any legacy application.
Sometimes legacy code is important and has to be run on modern operating systems. The reasons for this can vary.
Newer operating systems like Windows7 provide compatibility modes in them to support older applications, but sometimes you get error messages when you run them.
I like to understand why as much as the how to get legacy applications to run on a modern operating system so that I can prove to myself that the application can execute ok.
So the scenario is that you wrote an awesome program in the 1990’s and wish to run it in 2012. However, try all you may it does not run at all 😦
A tool like Dependency Walker (http://www.dependencywalker.com) can open any of your legacy executables and provide a dependency tree of all dynamically loaded libraries the application wishes to use.
Sometimes in Dependency Walker’s error log you will find some dll’s that are not found. For example:
Using a tool such as this, you can provide real time feedback to developers so that they can make changes that will enable their applications to run on modern operating systems.
In my particular case, the executable I tried to open with dependency walker reported the above messages; however when I ran the application in compatibility mode Windows 95, I was able to execute the program just fine.
In my attempt to write TCP/IP application on Windows platform, I realized sometimes it is not possible for your service to uninstall without a reboot of the machine. I imagine this happens most prominently on a multi-user machine, but that is just pure speculation. I have heard that the below is not really needed on a single user machine and instead the services.msc snap in when refreshed can make sure the service is completely removed.
Either way, the method which which you can prevent having to reboot is a two step process:
Determine the PID of your service
sc queryex “NAME_OF_SERVICE”
Here, NAME_OF_SERVICE is the exact name of your service as displayed in the services.msc snap-in on any windows system.
The above command run on the console will output something like: