locked
PST capture - service crash RRS feed

  • Question

  • Hello,

    I tried to run the tool on 2 different servers. always the same issue. The service crashes and is not able to retrieve the list of mailboxes:

    ExchangeHierarchy

    Cannot retrieve information from Active Directory - permission denied.

    Ensure the Central Service is running as a domain user with the required permissions.

    My service account is member of Organization Management group.

    Exchange 2010 SP1, DC Windows 2008 R2, domain is in Windows 2003 mode.

    always the same message:

    AppDomain


    Unhandled exception in AppDomain


    System.DirectoryServices.ActiveDirectory.ActiveDirectoryOperationException: A local error has occurred.


    ---> System.DirectoryServices.DirectoryServicesCOMException (0x8007203B): A local error has occurred.



       at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)


       at System.DirectoryServices.DirectoryEntry.Bind()


       at System.DirectoryServices.DirectoryEntry.get_AdsObject()


       at System.DirectoryServices.PropertyValueCollection.PopulateList()


       at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName)


       at System.DirectoryServices.PropertyCollection.get_Item(String propertyName)


       at System.DirectoryServices.ActiveDirectory.PropertyManager.GetPropertyValue(DirectoryContext context, DirectoryEntry directoryEntry, String propertyName)


       --- End of inner exception stack trace ---


       at System.DirectoryServices.ActiveDirectory.PropertyManager.GetPropertyValue(DirectoryContext context, DirectoryEntry directoryEntry, String propertyName)


       at System.DirectoryServices.ActiveDirectory.DirectoryEntryManager.ExpandWellKnownDN(DirectoryContext context, WellKnownDN dn)


       at System.DirectoryServices.ActiveDirectory.Utils.GetReplicaList(DirectoryContext context, String partitionName, String siteName, Boolean isDefaultNC, Boolean isADAM, Boolean isGC)


       at System.DirectoryServices.ActiveDirectory.DomainController.FindAllInternal(DirectoryContext context, String domainName, Boolean isDnsDomainName, String siteName)


       at RedGate.PSTImporterForExchange.ActiveDirectory.ServerProvider.GetDomainControllersForDomain(String domainDN, Connection conn)


       at RedGate.PSTImporterForExchange.ActiveDirectory.ServerProvider.GetServerForDn(String targetDN)


       at RedGate.PSTImporterForExchange.ActiveDirectory.MailboxDataProvider.CacheUpdateMethod()


       at RedGate.PSTImporterForExchange.ActiveDirectory.AsyncUpdatedObject`1.RunUpdate(Boolean acquireLock)


       at RedGate.PSTImporterForExchange.ActiveDirectory.AsyncUpdatedObject`1.<ForceUpdateStart>b__0(Object state)


       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)


       at System.Threading._ThreadPoolWaitCallback.PerformWaitCallbackInternal(_ThreadPoolWaitCallback tpWaitCallBack)


       at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback(Object state)

    Any help is welcome.

    Chris

    Tuesday, February 7, 2012 12:52 PM

All replies

  • Chris,

    Using that service account, can you open ADSIEdit.msc and traverse to:

    Distinguished name of the object: CN=<organization>,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=<domain>

    If you're able to access that, does this create anything in the event logs (applications)?

    Ankur

    Tuesday, February 7, 2012 9:29 PM
  • with ADSIEDIT, I can access  CN=<organization>,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=<domain> without any error. Nothing in the application event log.

    In the Microsoft Exchange PST capture event log, I have the following error:

    Console


    Fatal exception


    System.IO.FileNotFoundException: Could not find file 'C:\Users\CHGVAPSTmigration\AppData\Local\Temp\2\bhq0zcnw.dll'.


    File name: 'C:\Users\CHGVAPSTmigration\AppData\Local\Temp\2\bhq0zcnw.dll'


       at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)


       at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)


       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy)


       at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)


       at Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch(CompilerParameters options, String[] fileNames)


       at Microsoft.CSharp.CSharpCodeGenerator.FromSourceBatch(CompilerParameters options, String[] sources)


       at Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromSourceBatch(CompilerParameters options, String[] sources)


       at System.CodeDom.Compiler.CodeDomProvider.CompileAssemblyFromSource(CompilerParameters options, String[] sources)


       at System.Xml.Serialization.Compiler.Compile(Assembly parent, String ns, XmlSerializerCompilerParameters xmlParameters, Evidence evidence)


       at System.Xml.Serialization.TempAssembly.GenerateAssembly(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, Evidence evidence, XmlSerializerCompilerParameters parameters, Assembly assembly, Hashtable assemblies)


       at System.Xml.Serialization.TempAssembly..ctor(XmlMapping[] xmlMappings, Type[] types, String defaultNamespace, String location, Evidence evidence)


       at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly(XmlMapping xmlMapping, Type type, String defaultNamespace, String location, Evidence evidence)


       at System.Xml.Serialization.XmlSerializer..ctor(Type type, XmlAttributeOverrides overrides, Type[] extraTypes, XmlRootAttribute root, String defaultNamespace, String location, Evidence evidence)


       at System.Xml.Serialization.XmlSerializer..ctor(Type type, Type[] extraTypes)


       at RedGate.PSTImporterForExchange.UI.Options.Serializer.Save(Serializer target)


       at System.Windows.Forms.Form.WmClose(Message& m)


       at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)


       at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

    Chris

    Wednesday, February 8, 2012 9:09 AM
  • Organization Management group holder does not have mailbox Import-Export Right.

    Try assigning this right with ECP RBAC.

    Thursday, February 9, 2012 6:36 AM
  • Thursday, February 9, 2012 6:40 AM
  • I am able to run new-mailboxexportrequest or new-mailboximportrequest with my service account.

    the account is not able to retrieve mailboxes list and the service is crashing every time. Definitely not a problem with the server as I tried to install it on three servers.

    I have done the installation in my lab and it's working fine. But in the production, not able to get this tool working!!

    Thursday, February 9, 2012 10:34 AM
  • the account is not able to retrieve mailboxes list and the service is crashing every time. Definitely not a problem with the server as I tried to install it on three servers.

    Hi Chris,

    Do you mean you can start the PST Capture Console, but it crashes when you do a search?

    Scenario                        Permissions required

    Searching for PSTs          You must be logged on with local administrator privileges on the computer where you run the PST Capture Console.    

    Please start the PST Capture Console via Run as administrator to test.

    If possible, please also create a test local admin account to run the tool to test.

    Microsoft Exchange PST Capture

    http://technet.microsoft.com/en-us/library/hh781036.aspx

    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com


    Frank Wang

    TechNet Community Support

    Friday, February 10, 2012 3:33 AM
  • Hello,

    run as administrator give the same result.

    I also created a local account and tried to run the tool. With this local admin account, the tool does not start.

    I really think the problem is linked with my exchange and AD infra. Nothing on the local server

    Chris

    Friday, February 10, 2012 8:35 AM
  • Hi Chris,

    Please run the Exbpa in the Toolbox to do a Health Check & Permission Check.


    Frank Wang

    TechNet Community Support

    Monday, February 13, 2012 8:01 AM
  • the exbpa shows only warnings:

    • those linked with vmware for the health check
    • and a warning concerning a management group in the permission check.The object MyMailboxDelegation has been corrupted, and it's in an inconsistent state.

    Monday, February 13, 2012 1:13 PM
  • Hi Chris,

    Please rerun the setup /PrepareAD again.

    Prepare Active Directory and Domains

    http://technet.microsoft.com/en-us/library/bb125224.aspx


    Frank Wang

    TechNet Community Support

    Tuesday, February 14, 2012 1:53 AM