cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
swazendo
Level 2

Using “Deferred Execution in System Context” causes C++ "net use" command to fail.

I have a previous post and found a solution but I can’t explain why it fixes my problem. I would like to understand why this happens.

Here is what I found:

Use “Deferred Execution in System Context” on a command action that calls a C++ executable (VS2005) that calls a “net use” command. The “net use” command fails to connect.

If I use only “Deferred Execution” in my command action the “net use” connection works.

The command action is in the Installation Execute section.

I’m running the installation with admin privilege.

Thanks.
Labels (1)
0 Kudos
(2) Replies
Cary_R
Level 11

Hi There,

Net Use connects to a remote share via the CIFS/SMB/NetBios Sharing/etc. protocol which requires a valid user context. "System Context" is under the SYSTEM account, which tries to authenticate with a user of NULL.

Basically the same issue described here:

http://kb.flexerasoftware.com/selfservice/viewContent.do?externalId=Q111936&sliceId=1

You'll find that custom actions that try to use Windows Authentication to connect to a SQL Database will run into similar issues as well.

The best thing to do would be to use "Deferred Execution Terminal Server Aware", since Deferred Actions automatically run under SYSTEM when running in a Terminal Services/RDP session.
0 Kudos
swazendo
Level 2

This fixed the problem I had. thank you. Sorry for responding so late.
0 Kudos