Video Screencast Help
Give us your opinion and win with Symantec! Please help us by taking this survey to tell us about your experience with Symantec Connect, so that we can continue to grow and improve.  Take the survey.

Create Directory Component - can not create folder on Remote Server

Created: 24 Aug 2012 • Updated: 03 Sep 2012 | 3 comments
This issue has been solved. See solution.

I am currently having an issue with the "Create Directory" component in a workflow 7.1 project.

I have a project for creating new Active Directory users and their homedrives on the relevant file server.

The AD account is created successfully, however when trying to create a folder on a remote Server the error "Access to path is denied" is displayed.

I have given the workflow service account permission to the folder and when project is ran in debug mode the folder creates succesfully.

I have also tried using the Execute batch component with the "mkdir" command but get the same error.

Does the project run as a different user in debug and published mode ?

Is there any other way to create a folder on a remote server ? 

Error Message Displayed Below:

System.Exception: Execution Exception ---> System.Exception: exception component created:  ---> LogicBase.Framework.BusinessRuleException: The critical error failed execution on component Create Directory : Access to the path '\\fileserver\users\dept\joe.bloggs' is denied. : at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.Directory.InternalCreateDirectory(String fullPath, String path, DirectorySecurity dirSecurity) at System.IO.Directory.CreateDirectory(String path, DirectorySecurity directorySecurity) at LogicBase.Components.Default.IO.CreateDirectory.Run(IData data) at LogicBase.Core.ExecutionEngine.SinglePathProcessComponentExecutionDelegate.Execute(IData data, IOrchestrationComponent comp, String& outputPath, IExecutionEngine engine, TLExecutionContext context) at LogicBase.Core.ExecutionEngine.AbstractExecutionEngine.RunComponent(TLExecutionContext context, IData data, IOrchestrationComponent comp)
   --- End of inner exception stack trace ---
   at LogicBase.Core.ExecutionEngine.ExceptionComponentDelegate.Execute(IData data, IOrchestrationComponent comp, String& outputPath, IExecutionEngine engine, TLExecutionContext context)
   --- End of inner exception stack trace ---
   at LogicBase.Core.ExecutionEngine.AbstractExecutionEngine.RunEngine(List`1 executionQueue)

Comments 3 CommentsJump to latest comment

reecardo's picture

Yes, projects run under the contexts of different users in debug vs. publish.

When debugging, projects generally run under the context of the logged-in user. When published, projects generally run under the context of the application pool it lies under (usually a far more constrained set of rights).

This has been discussed before on the forum in various threads. See this thread for more info:

Mark Marriott's picture

Thanks Reecardo,

Can you point me in the direction of a guide on how to change the application pool in IIS to run as a domain user ?

AnaMan's picture

This is for IIS 7.x

Open an Internet Information Services (IIS) Manager. Application Pools is usually a first branch on a IIS resources tree. When you enter this branch you will get an application pools list. Find this one which your process is using. You can check this by selecting each pool and choosing options View Applications. If you find the corresponding you process then choose from menu command Advanced Settings. In section Process Model you will find an entry Identity. Enter it, select Custom Account and fill in with proper credentials.