CreateProcessAsUser fails on XP x64
fails and GetLastError returns error code 233 (ERROR_PIPE_NOT_CONNECTED
or "No process is on the other end of the pipe"), but this only happens
on the 64-bit version of Windows XP (I haven't tested on any non-XP
OSes).
I've tried using CreateProcessAsUserW since I had seen several remarks
that CreateProcessAsUserA's implementation was a little buggy, but
still the same problem.
Here's a description of what my application is doing.
I'm running as service (thus in session 0). My service has registered
to receive session notification messages. Whenever I receive a logon
message (indicating a user has logged on), I grab the session number,
change the TokenSessionId on a copy of my own token, and use that token
to issue a CreateProcessAsUser call to open up notepad.exe in the new
session, with the credentials of my service account (Yes I know this is
a security issue, which we will address as soon as we resolve the
current issue). On 32-bit XP, everything works beautifully. On 64-bit
XP, I get the aforementioned error.
Anyone else seen a similar issue, or know why this is happening?

