Stack walking is second nature to debuggers. But if you had more interest in it than just debugging and either: wanted to know what stack walking is about, or wanted to know how stack walking is implemented, or wanted to know how a custom stack walker can be authored for your application then you might find the article, Authoring a Stack Walker for X86, useful. Its my attempt to help clarify the basics of stack walking and explain key concepts and show how it can be implemented on x86 platform. The ......
The book is a must have for every serious Windows developer!
Working on the CLR's exception handling subsystem is not just challenging but also gives unique opportunities to understand how the various exception handling subsystems (e.g. SEH, C++ EH, etc) work, and in particular, how they interoperate with one another. It was such case that had me discuss one such issue with Kevin, development lead of the JIT, that he mentions here. That discussion got me exploring the interoperability aspects of EH further and resulted in the bullets listed below. Incase you ......
[Original Post Date: 5th September 2005] Share Source CLI, better known as Rotor, is one of the best ways to understand how .NET Framework works. And with the source code availability as part of Rotor distribution, its an excellent academic/hobby interest - you can extend it by adding more functionality, or modify the existing one and see how it behaves. Yesterday, I went about doing the same. One of the functionality which I found missing in Rotor is that of enumerating system process list. .NET ......
Check out the shared source Bluetooth class library - Windows Embedded Source Tools for Bluetooth
Under managed code, once you impersonate your application's thread using LogonUser and WindowsIdentity class's Impersonate method, you can go ahead and perform tasks using the impersonated thread as you require. However, there are couple of catches to this:1) If you launch a process using Process.Start method, the launched process will not execute under the impersonation context of your application. If you want to make that happen, you will have to launch the process using CreateProcessWithLogonW ......
I returned this past weekend after a family function. It had me very busy and thus, no blogging for sometime for me :) That said, today I was working with one of my friends over email - she was stuck about getting to launch a process in a specific user context, using managed code. Since the .NET Framework doesn't support such functionality out of the box, we tried different ways to do this: 1) LogonUser followed by WindowsIdentity impersonation using the obtained token - the token wasn't getting ......
Ever wondered how the ActiveSync synchronization application gets launched automatically when you plug-in your SmartPhone or PocketPC? Or, would you like to build your application ActiveSync-aware, getting invoked when ActiveSync connection has been established or disconnected? On your desktop, under the following registry key, create an entry for the application to be launched when ActiveSync connection has been established: HKEY_LOCAL_MACHINE\Software... CE Services\AutoStartOnConnect ......
As part of the recently concluded Mobile and Embedded DevCon 2004 at Bangalore, from 9th-11th Dec 2004, I delivered a talk on Remote API (RAPI), amongst other things. To demonstrate the tremendous power and capability of Windows CE RAPI (which allows us to managed CE based devices from the desktop), I wrote a Windows CE File Manager - a Windows Explorer like application that can be used to navigate the CE device's file system and move files to/fro the device and your desktop and open them from the ......