OK, well if it is all going to run client side, then why not run it all
client side, controls and or code in the browser not on the server.
For example:
http://www.15seconds.com/issue/030610.htm
Then you might just use Process.Start without needing impersonation.
>From a Full Trust site, this works for me...
<object id="UserControl1"
classid="http:WindowsControlLibrary1.dll#WindowsCo ntrolLibrary1.UserControl1"
height="0" width="0"> </object>
Private Sub UserControl1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Dim psi As New ProcessStartInfo("calc.exe")
Process.Start(psi)
End Sub