Data Mining shared mail box using powershell via com object Performance is really bad.

I was trying to pull a report from multiple shared mail boxes by configuring them in outlook. Everything works fine for me here but the problem is that the below script would need a minimum of 10-14 hours on weekly basis. Can you please comment me on how
can I get more performance? My average mailbox details and my observations are as below:
It would have about 35 sub folders recursively up to 3 levels in Inbox.
It would have ~ 300,000 to 400,000 emails.
I donot know if this can be easily accomplished via EMC Shell but I dont have it either.
And these are configured in Outlook 2013.
The biggest folder has about 60000 emails.
Even plain export without any filter or calculated values in the output is taking the similar time.
I have even tried to use pick folder and manually executed multiple instances (~10) for each folder but the performance was really worst.
-------------------------Script Starts here--------------------------------------
Filter WeeklyReport {If((($_.SentOn -ge ("12/14/2014" -as [datetime])) -and ($_.SentOn -le ("12/20/2014" -as [datetime])))){$_}}
$ReportFileName="~\Desktop\EMail_Export_$(get-date -f yyyy-MM-dd-HH-mm).csv"
function GetSubfolders($Parent) { 
    $folders = $Parent.Folders 
    foreach ($folder in $folders) { 
        $Subfolder = $Parent.Folders.Item($folder.Name) 
        Write-Host ("Started processing"+$folder.Name +" at "+$(Get-Date)+" which has "+$folder.items.Count + " items ") -NoNewLine
        $folder.Items | WeeklyReport | Select-Object -Property SenderEmailType,ConversationTopic,CreationTime,ReceivedTime,Importance,LastModificationTime,Size,Subject,CC,ReceivedByName,ReceivedOnBehalfOfName,SenderName,SentOn,SentOnBehalfOfName,To,SenderEmailAddress,Categories,@{N='FolderName';E={$($folder.Name)}}
| epcsv -Path $ReportFileName -NoTypeInformation -Append
        Write-Host ($(Get-Date))
        GetSubfolders($Subfolder) 
Add-Type -AssemblyName "Microsoft.Office.Interop.Outlook"
$olFolders = "Microsoft.Office.Interop.Outlook.olDefaultFolders" -as [type]
$outlook = New-Object -ComObject outlook.application
$namespace = $outlook.GetNamespace("MAPI")
$MailBox=$namespace.Folders | ?{$_.Name -eq "[email protected]"}
$MailBoxInbox=$MailBox.Folders | ?{$_.Name -eq "Inbox"}
Write-Host ("Started processing Inbox at "+$(Get-Date)+" which has "+$MailBoxInbox.items.Count + " items") -NoNewLine
$MailBoxInbox.Items | WeeklyReport | Select-Object -Property SenderEmailType,ConversationTopic,CreationTime,ReceivedTime,Importance,LastModificationTime,Size,Subject,CC,ReceivedByName,ReceivedOnBehalfOfName,SenderName,SentOn,SentOnBehalfOfName,To,SenderEmailAddress,Categories,@{N='FolderName';E={'Inbox'}}
| epcsv -Path $ReportFileName -NoTypeInformation -Force
Write-Host ($(Get-Date))
GetSubfolders($MailBoxInbox)
$outlook.quit()
-------------------------Script Ends here--------------------------------------
--VenuGopal

Aah, Sorry COM object....
I have observed that for the execution of the below line hardly it is taking 1-2 seconds for processing 50,000 items and it is similar even if we dont apply the filter.
$items=$Folder.Items.Restrict($sFilter)
Just got a doubt and found that the performance issue is not while processing the data but export is taking so much of time. For Example: Execution of the below line starts giving out put on the fly.
$items|Select-Property$props|ft-a
Even Out-File is taking so much of time. So, I think I need to start looking out for string builder or Stream Writer rather using epcsv?
--VenuGopal

Similar Messages

  • Starting SMA runbook with parameteres using powershell via REST

    Hello!
    I am trying to start SMA runbook using powershell via REST. I can do that normally for simple runbook without parameters using REST web service (for example
    https://my.server.com:9090/00000000-0000-0000-0000-000000000000/Runbooks%28guid%27bd55d199-c261-4c50-9cef-a83d5c976ce2%27%29/Start
    However, I do not understand how to start a runbook which has parameters? For example I have 2 runbooks - 1 with single parameter and second with 3 parameters, how can I pass parameters value? I would really appreciate any help!

    Hello
    Does this Link answer your question?
    http://msdn.microsoft.com/en-us/library/hh921685.aspx
    Thanks
    Josh
    Code from that URL in case the link ever dies:
    # Details of the runbook we are going to run
    $rbid = "00000000-0000-0000-00000000000000001"
    $rbParameters = @{"00000000-0000-0000-00000000000000002" = "This is the value for Param1.";" 00000000-0000-0000-00000000000000003" = " This is the value for Param2."}
    # Create the request object
    $request = [System.Net.HttpWebRequest]::Create("http:// server01.contoso.com:81/Orchestrator2012/Orchestrator.svc/Jobs")
    # Set the credentials to default or prompt for credentials
    $request.UseDefaultCredentials = $true
    # $request.Credentials = Get-Credential
    # Build the request header
    $request.Method = "POST"
    $request.UserAgent = "Microsoft ADO.NET Data Services"
    $request.Accept = "application/atom+xml,application/xml"
    $request.ContentType = "application/atom+xml"
    $request.KeepAlive = $true
    $request.Headers.Add("Accept-Encoding","identity")
    $request.Headers.Add("Accept-Language","en-US")
    $request.Headers.Add("DataServiceVersion","1.0;NetFx")
    $request.Headers.Add("MaxDataServiceVersion","2.0;NetFx")
    $request.Headers.Add("Pragma","no-cache")
    # If runbook servers are specified, format the string
    $rbServerString = ""
    if (-not [string]::IsNullOrEmpty($RunbookServers)) {
    $rbServerString = -join ("<d:RunbookServers>",$RunbookServers,"</d:RunbookServers>")
    # Format the Runbook parameters, if any
    $rbParamString = ""
    if ($rbParameters -ne $null) {
    # Format the param string from the Parameters hashtable
    $rbParamString = "<d:Parameters><![CDATA[<Data>"
    foreach ($p in $rbParameters.GetEnumerator())
    #$rbParamString = -join ($rbParamString,"&lt;Parameter&gt;&lt;ID&gt;{",$p.key,"}&lt;/ID&gt;&lt;Value&gt;",$p.value,"&lt;/Value&gt;&lt;/Parameter&gt;")
    $rbParamString = -join ($rbParamString,"<Parameter><ID>{",$p.key,"}</ID><Value>",$p.value,"</Value></Parameter>")
    $rbParamString += "</Data>]]></d:Parameters>"
    # Build the request body
    $requestBody = @"
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>
    <entry xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
    <content type="application/xml">
    <m:properties>
    <d:RunbookId m:type="Edm.Guid">$rbid</d:RunbookId>
    $rbserverstring
    $rbparamstring
    </m:properties>
    </content>
    </entry>
    # Create a request stream from the request
    $requestStream = new-object System.IO.StreamWriter $Request.GetRequestStream()
    # Sends the request to the service
    $requestStream.Write($RequestBody)
    $requestStream.Flush()
    $requestStream.Close()
    # Get the response from the request
    [System.Net.HttpWebResponse] $response = [System.Net.HttpWebResponse] $Request.GetResponse()
    # Write the HttpWebResponse to String
    $responseStream = $Response.GetResponseStream()
    $readStream = new-object System.IO.StreamReader $responseStream
    $responseString = $readStream.ReadToEnd()
    # Close the streams
    $readStream.Close()
    $responseStream.Close()
    # Get the ID of the resulting job
    if ($response.StatusCode -eq 'Created')
    $xmlDoc = [xml]$responseString
    $jobId = $xmlDoc.entry.content.properties.Id.InnerText
    Write-Host "Successfully started runbook. Job ID: " $jobId
    else
    Write-Host "Could not start runbook. Status: " $response.StatusCode

  • Cannot attach data store shared-memory segment using JDBC (TT0837) 11.2.1.5

    Hi,
    I found the thread Cannot attach data store shared-memory segment using JDBC (TT0837) but it can't help me out.
    I encounter this issue in Windows XP, and application gets connection from jboss data source.
    url=jdbc:timesten:direct:dsn=test;uid=test;pwd=test;OraclePWD=test
    username=test
    password=test
    Error information:
    java.sql.SQLException: [TimesTen][TimesTen 11.2.1.5.0 ODBC Driver][TimesTen]TT0837: Cannot attach data store
    shared-memory segment, error 8 -- file "db.c", lineno 9818, procedure "sbDbConnect"
    at com.timesten.jdbc.JdbcOdbc.createSQLException(JdbcOdbc.java:3295)
    at com.timesten.jdbc.JdbcOdbc.standardError(JdbcOdbc.java:3444)
    at com.timesten.jdbc.JdbcOdbc.standardError(JdbcOdbc.java:3409)
    at com.timesten.jdbc.JdbcOdbc.SQLDriverConnect(JdbcOdbc.java:813)
    at com.timesten.jdbc.JdbcOdbcConnection.connect(JdbcOdbcConnection.java:1807)
    at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:303)
    at com.timesten.jdbc.TimesTenDriver.connect(TimesTenDriver.java:159)
    I am confused that if I use jdbc, there is no such error.
    Connection conn = DriverManager.getConnection("url", "username", "password");
    Regards,
    Nesta

    I think error 8 is
    net helpmsg 8
    Not enough storage is available to process this command.
    If I'm wrong I'm happy to be corrected. If you reduce the PermSize and TempSize of the datastore (just as a test) does this allow JBOSS to load it?
    You don't say whether this is 32bit or 64bit Windows. If it's the former, the following information may be helpful.
    "Windows manages virtual memory differently than all other OSes. The way Windows sets up memory for DLLs guarantees that the virtual address space of each process is badly fragmented. Other OSes avoid this by densely packing shared libraries.
    A TimesTen database is represented as a single contiguous shared segment. So for an application to connect to a database of size n, there must be n bytes of unused contiguous virtual memory in the application's process. Because of the way Windows manages DLLs this is sometimes challenging. You can easily get into a situation where simple applications that use few DLLs (such as ttIsql) can access a database fine, but complicated apps that use many DLLs can not.
    As a practical matter this means that TimesTen direct-mode in Windows 32-bit is challenging to use for those with complex applications. For large C/C++ applications one can usually "rebase" DLLs to reduce fragmentation. But for Java based applications this is more challenging.
    You can use tools like the free "Process Explorer" to see the used address ranges in your process.
    Naturally, 64-bit Windows basically resolves these issues by providing a dramatically larger set of addresses."

  • How to pick a message from a mail box using shell script

    Hi
    Can any one tell me how to pick a message from a mail box using shell script.
    Thanks,
    Suman.

    Hi Suman,
    Can any one tell me how to pick a message from a mail box using shell script.Grep for the message and then either cut or awk for the text. . . Something like this:
    ls -al /mail/directory | grep "$1"* | awk '{print $9}'
    Jon emmons has working samples in his book on Oracle shell scripting . . .
    Hope this helps . . .
    Donald K. Burleson
    Oracle Press author
    Author of "Oracle Tuning: The Definitive Reference"
    http://www.rampant-books.com/book_2005_1_awr_proactive_tuning.htm

  • Cannot attach data store shared-memory segment using JDBC (TT0837)

    I'm currently evaluating TimesTen during which I've encountered some problems.
    All of the sudden my small Java app fails to connect to the TT data source.
    Though I can still connect to the data source using ttisql.
    Everything worked without problems until I started poking around in the ODBC administrator (Windows 2K).
    I wanted to increase permanent data size so I changed some of the parameters.
    After that my Java app fails to connect with the following message:
    DriverManager.getConnection("jdbc:timesten:direct:dsn=rundata_tt60;OverWrite=0;threadsafe=1;durablecommits=0")
    trying driver[className=com.timesten.jdbc.TimesTenDriver,com.timesten.jdbc.TimesTenDriver@addbf1]
    SQLException: SQLState(08001) vendor code(837)
    java.sql.SQLException: [TimesTen][TimesTen 6.0.4 ODBC Driver][TimesTen]TT0837: Cannot attach data store shared-memory segment, error 8 -- file "db.c", lineno 8846, procedure "sbDbConnect()"
    The TT manual hasn't really provided any good explanation what the error code means.
    Obviusly I'v already tried restoring the original ODBC parameters without any luck.
    Ideas..anyone?
    /Peter

    Peter,
    Not sure if you have resolved this issue or not. In any case, here are some information to look into.
    - On Windows 32-bit, the allocation of shared data segment doesn't work the same way like on Unix and Linux. As a result, the maximum TimesTen database size one can allocate is much smaller on the Windows platform than on other platforms.
    - Windows error 8 means ERROR_NOT_ENOUGH_MEMORY: not enough storage is available to process this command.
    - TimesTen TT0837 says the system was unable to attach a shared memory segment during a data store creation or data store connection operation.
    - What was the largest successful perm-size and temp-size you used when allocating the TimesTen database?
    * One explanation for why you were able to connect using ttIsql is that it doesn't use much of the DLLs, whereas your Java application typically has a lot more DLLs.
    * As a troubleshooting step, you can try reduce your Temp-size to a very small size and just see if you can connect to the data store. Eventually, you may need to reduce your perm-size to get Windows to fit the shared data segment in the process space.
    By the way the TimesTen documentation has been modified to document this error as follows:
    Unable to attach to a shared memory segment during a data store creation or data store connection operation.
    You will receive this error if a process cannot attach to the shared memory segment for the data store.
    On UNIX or Linux systems, the shmat call can fail due to one of:
    - The application does not have access to the shared memory segment. In this case the system error code is EACCESS.
    - The system cannot allocate memory to keep track of the allocation, or there is not enough data space to fit the segment. In this case the system error code is ENOMEM.
    - The attach exceeds the system limit on the number of shared memory segments for the process. In this case the system error code is EMFILE.
    It is possible that some UNIX or Linux systems will have additional possible causes for the error. The shmat man page lists the possibilities.
    On Windows systems, the error could occur because of one of these reasons:
    - Access denied
    - The system has no handles available.
    - The segment cannot be fit into the data section
    Hope this helps.
    -scheung

  • Set user inherit permissions check box using powershell

    Hi All,
    How can I set the the  "include inherit permissions from this objects parent" propertiy in Active Directory user object to a list of users using powershell.
    This option is not checked for some of my users and I'll like to set it using a powershell script.
    Thanks
    Simon
    MCSA, MCSE, MCITP:SA, MCITP:EA, MCITP:Enterprise Messaging Administrator 2010, CCNA

    download Quest Active Directory:
     Get-QADUser -SizeLimit 0 | ? {$_.DirectoryEntry.ObjectSecurity.AreAccessRulesProtected} | Set-QADObjectSecurity -UnLockInheritance
    or 
    Get-QADUser -SizeLimit 0 | ? {$_.security.PermissionInheritanceLocked} | Set-QADObjectSecurity -UnlockInheritance
    or 
    $user = [ADSI]"LDAP://cn=kazun,ou=test,dc=contoso,dc=com"
    $acl = $ouser.objectSecurity
    $isProtected = $false # allows inheritance
    $preserveInheritance = $true # preserve inherited rules
    $acl.SetAccessRuleProtection($isProtected, $preserveInheritance)
    $user.commitchanges()
    I had this issue and using both of Kazun's methods worked. A mod should mark this as the answer.Paul Frankovich

  • Configure site auditing in sharepoint online using powershell or Client object model

    Is the any way to configure site collection audit settings in sharepoint online programmatically or using powershell.

    Hi Bhism,
    The solution given in the article is for sharepoint 2010, i want to enable site auditing in Sharepoint 2013.
    When i tried using that for sharepoint 2013 making he neccessary changes required for sharepoint 2013 i got an error :
    Unable to find type [Microsoft.SharePoint.SPAuditMaskType]: make sure that the
    assembly containing this type is loaded.
    I think the assembly is for SP2010, is there anything like that for SP2013
    Thanks in Advance.

  • Using as a COM-object

    Hello gurus,
    Is it possible to use Adobe Indesign as a COM-object? Can I do it remotely?
    Will it be okay or should i buy Adobe Indesign Server for these purposes?
    Thank you.
    p.s. I'm developing a small webapp and i want to use Indesign.

    (I've moved this thread to the InDesign Scripting forum).
    Technically, yes, you can access InDesign as COM object.
    The documentation Adobe provides is for VBscript, though you can use other COM languages.
    I don't know about remotely.
    Is it OK? Well, probably not. Read the EULA carefully, but controlling InDesign via a web application would appear to violate the terms of use. Check with your counsel.

  • Getting email notifications using EWS streaming notifications for a shared mail box

    Hi,
    I have been trying to get email notification for a shared mailbox using EWS streaming notifications. i am unable to get the notifications. Please can any one tell me how this task can be achieved.
    -Praveen

    I would recommend you to this link
    http://blogs.msdn.com/b/emeamsgdev/archive/2013/04/16/ews-streaming-notification-sample.aspx
    Mark Answered, if it solves your question and Vote if you found it helpful.
    Rohit Arora

  • Word Mail Merge using Powershell

    Hi all,
    I'm working on a script that automates account creation and notification for our students. I've completed a significant chunk of the script and have it successfully creating AD accounts and e-mailing students their credentials to access our system from
    a batch job that runs nightly. I want to add an additional part that will create a document using a Microsoft word template that is associated with a CSV file that the script will be populating each day it runs. The goal is to create a mail merged PDF that
    I can give to our admissions folks that has all the pertinent information for students to login. They will put these documents in their admissions packets or hand them to new students so they can login to the student system. I think I'm almost there as
    I can get word to create a PDF of the template. The only problem is I have no idea how to get it to execute the mail merge so that the pdf contains the actual data I need it to. Currently all I end up with is an export of the template itself in PDF
    format.
    I'm sure the problem with this is that I'm having trouble calling the .net functions for Word via powershell. Online I see various documents on how to do this with vb.net however Powershell instructions seem to not exist. I'm sure the actions are quite similar
    but I need some help. Here is the section of the code I have currently:
    $filename = "EmailTemplate1.dotx"
    $filename2 = "EmailTemplateProc.pdf"
    $word=new-object -com Word.Application
    $doc=$word.Documents.Add($filename)
    $word.Visible=$False
    $word.ActiveDocument.Fields.Update()
    $doc.WdMailMergeDestination.wdSendToNewDocument
    $word.ActiveDocument
    $Doc.saveas([ref] $filename2, [ref] 17)
    $Doc.close()
    $word.Quit()
    I'm sure the problem lies somewhere at the $doc.WdMailMergeDestination and onward. Basically I want it to take the dotx file which already has the templated document with mail merged fields and save an executed mail merge as a PDF. Any insight
    would be great.
    Thanks in advance!

    Not quite sure about that command line thing. I looked all through the support doc you posted and see nothing mentioning executing a mail merge via the command line. Is there something else i'm missing here? Can it be done with a macro?
    Like I posted.  As how to do a mail merge in the Word forum.  You can run a macro from the command line or you can trigger the merge from a startup macro.   The macros will reside in a template which will be specified on the command line
    alone with the new document name and location.
    You can create the macro in a minute with the macro recorder.
    ¯\_(ツ)_/¯

  • Archive/Move files based on Modified Date range to another Library Using PowerShell while retaining Metadata

    Hi,
    I am trying to archive files from a SharePoint 2010 document library by moving them to another library that's a dedicated archive/folder/library. The files to be moved are selected based on their modified date column value that should range between any time
    in the past to January 1st 2012. 
    Also, to be able to retain the tags and cloumn values after the move. Open in explorer does not bring along the user added tags.
    I tried to edit this script
    $WebURL = "http://mysite.com/";
    $ListDisplayName = "Crawl Test Library";
    $ArchiveFolderName = "Crawl Test Library Archive";
    function moveItems ()
    trap
    #make sure we dispose of these in the event of an error to avoid memory leaks:
    write-host "Error - disposing of objects...";
    $Web.Dispose();
    $Site.Dispose();
    [Microsoft.SharePoint.SPSite] $Site = New-Object Microsoft.SharePoint.SPSite($WebURL);
    [Microsoft.SharePoint.SPWeb] $Web = $Site.OpenWeb();
    [Microsoft.SharePoint.SPList] $List = $Web.Lists[$ListDisplayName];
    $FolderToMoveTo = $List.RootFolder.Url + "/" + $FolderName;
    $ItemMoveCount=0;
    $Query = New-Object Microsoft.SharePoint.SPQuery;
    $Query.Folder = $list.RootFolder;
    $camlQuery = "<Where><Leq><FieldRef Name='Modified' /><Value Type='DateTime'>2012-01-01T00:00:00Z</Value></Leq></Where>"
    $Query.Query = $camlQuery
    $Query.RowLimit = 2200; #limit query because of large folder
    $List.GetItems($Query) |
    Where {$_.ContentType.Name -ne "Folder"} |
    foreach-object {
    #Line below will simply output to console and demonstrates another .NET call
    [System.String]::format("Moving Item {0} with ID {1}...",$_.Name, $_.ID.ToString());
    $Web.GetFile($_.Url).MoveTo([System.String]::format("{0}/{1}",$FolderToMoveTo,$_.Name));
    write-host "Success...";
    $ItemMoveCount++;
    write-host "==============================================================================";
    write-host "Complete! -> Moved " $ItemMoveCount " Items to directory " $FolderName;
    write-host "==============================================================================";
    #dispose:
    $Web.Dispose();
    $Site.Dispose();
    #garbage collection
    [GC]::Collect()
    to do that but it doesn't seem to work. I am no guru in powershell yet so any help is appreciated.
    Thanks.

    This solution gets the job done. Much thanks to
    Ian Hayse
    NB...The Modified and Created dates are gonna reflect runtime dates now 
    $web = Get-SPWeb "http://sharepointed.com/"
    $list = $web.Lists["Shared Documents"]
    $spQuery = New-Object Microsoft.SharePoint.SPQuery
    $spQuery.ViewAttributes = "Scope='Recursive'";
    $spQuery.RowLimit = 2000
    $caml = '<Where><Lt><FieldRef Name="Created" /><Value IncludeTimeValue="TRUE" Type="DateTime">2014-01-01T04:06:45Z</Value></Lt></Where> '
    $spQuery.Query = $caml
    do
    $listItems = $list.GetItems($spQuery)
    $spQuery.ListItemCollectionPosition = $listItems.ListItemCollectionPosition
    $listTotal = $listItems.Count
    for ($x=$listTotal-1;$x -ge 0; $x--)
    try
    $listItems[$x].CopyTo("http://sharepoint/Docs/Documents/"+ $listItems[$x].name)
    Write-Host("DELETED: " + $listItems[$x].name)
    $listItems[$x].Recycle()
    catch
    Write-Host $_.Exception.ToString()
    while ($spQuery.ListItemCollectionPosition -ne $null)

  • E-mail notification using powershell script in 365

    I need a e-mail script that works using 365. Here is what I have so far and I cant get it to work.
    Function EMAIL{
    Param(
    $emailSmtpServer = "XXXXXXXXXXX",
    $emailSmtpServerPort = 587,
    $emailSmtpUser = "[email protected]",
    $emailSmtpPass = "Password",
    $emailFrom = "[email protected]",
    $emailTo = "[email protected]",
    $emailAttachment = 'XXXXXXXXXX',
    $emailSubject = "This is a test" ,
    $emailBody = "How does this look?"
    Process{
    $emailMessage = New-Object System.Net.Mail.MailMessage( $emailFrom , $emailTo )
    $emailMessage.Subject = $emailSubject
    $emailMessage.Attachments.add($emailAttachment)
    $emailMessage.IsBodyHtml = $true
    $emailMessage.Body = $emailBody
    $SMTPClient = New-Object System.Net.Mail.SmtpClient( $emailSmtpServer , $emailSmtpServerPort )
    $SMTPClient.EnableSsl = $true
    $SMTPClient.Credentials = New-Object System.Net.NetworkCredential( $emailSmtpUser , $emailSmtpPass );
    $SMTPClient.Send( $emailMessage )

    I'm not getting an error message, I don't get anything back.
    yes I have tried send-mailmessage I cant seem to get it to work either. Here is what I get with send-mailmessage.
    PS C:\Users\XXXX> Send-MailMessage -From [email protected] -Subject "This is a test" -To [email protected] -Body Testing -Port 587 -SmtpServer XXXXX
    Send-MailMessage : The SMTP server requires a secure connection or the client was not authenticated. The server
    response was: 5.7.1 Client was not authenticated
    At line:1 char:1
    + Send-MailMessage -From [email protected] -Subject "This is a test" -To XXX ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (System.Net.Mail.SmtpClient:SmtpClient) [Send-MailMessage], SmtpExcept
    ion
    + FullyQualifiedErrorId : SmtpException,Microsoft.PowerShell.Commands.SendMailMessage

  • Error:[The specified object was not found in the store] when trying to read another mail box using Delegate access

    Hi all,
    I need to create service to access all unread mails of  other mailbox's every time in Exchange server 2013, for that i trying to use Delegate access.
    but i am not succeed. I am getting Error Every time : [The specified object was not found in the store]
     error shows in FolderId in  
    var folderId = new FolderId(WellKnownFolderName.Inbox, userMailbox);
    List<DelegateUser> newDelegates = new List<DelegateUser>();
    DelegateUser emailDelegate = new DelegateUser("[email protected]");
    emailDelegate.Permissions.InboxFolderPermissionLevel = DelegateFolderPermissionLevel.Editor;
    newDelegates.Add(emailDelegate);
    Mailbox mailbox = new Mailbox("[email protected]");
    Collection<DelegateUserResponse> response = service.AddDelegates(mailbox, MeetingRequestsDeliveryScope.DelegatesAndSendInformationToMe, newDelegates);  var userMailbox = new Mailbox(useremail);
        var folderId = new FolderId(WellKnownFolderName.Inbox, userMailbox);
        var itemView = new ItemView(20);   
        var userItems = service.FindItems(folderId, itemView);
     i changed my code in many ways by adding new Delegate User with different folder permissions.
     but i am getting same Error, Please help me.

    That error means you don't have rights to the Mailbox your trying to access. In Exchange by default the only user that has access to mailbox is the owner of the Mailbox, Exchange Administration rights does not grant you access to another users mailbox. You
    need to either specifically grant rights to each mailbox using Add-MailboxPermissions or use EWS impersonation where you can impersonate the owner of the Mailbox see
    http://msdn.microsoft.com/en-us/library/bb204095(EXCHG.140).aspx and
    http://msdn.microsoft.com/en-us/library/office/dd633680(v=exchg.80).aspx
    Cheers
    Glen

  • Sharing mail box

    hello
    I would know if it's possible to share the same mailboxes from different users
    Thank's
    Message was edited by: andrews111

    no, that's not possible. what you can do is use the same IMAP email account. that will sync the mailboxes with the server so both users will effectively work with the same mailbox.

  • My ZTE Open does not respond whenver I open my mail box (it seems the loading is performed in the Ui thread)

    OS version 1.0.1.0
    Firmware version 1.01.00.01.019.144
    Hardware version P752D04B02
    It seems that some application delivered with the OS can freeze for few seconds (~20 sec) the phone. Especially when I use the mail client or the settings panel.
    So it is not possible to interact with the UI for this delay, my assumption is the data loading is peformed in the same thread than UI.
    This behavior is not a good user experience and it is not friendly for a smartphone.
    Please note I have one hundred mails on my Gmail mailbox but it is strange to me the problem is perfectly reproductible each time I open the mail client on my phone.
    Regards, Stéphane.

    Hello,
    After reading the information provided about your issue I suggest a soft reset of the phone.
    #Take the back cover of the phone off.
    #Take the battery out.
    #Take the SIM card and microSD card out (if applicable).
    #Wait 10 seconds.
    #Put the SIM card and microSD card back in (if applicable).
    #Put the battery back in.
    #Put the back cover back on.
    #Turn the device on.
    #Check if the issue you were having is still present.
    Please report back to us if this solved your problem!
    Thank you

Maybe you are looking for

  • ALE-IDOC pbm---------- get point.s

    hi all, I m able to transfer material master data from 800(ides) to 810(ides) through ALE. But when i transfer material master data from 800(ides) to 200(dev) My idoc status is 02 in ides but 51 in development......after lot of trying im not able to

  • SystemCenterDTSPackageTask runs for 10 hours +

    Hello, The process SystemCenterDTSPackageTask is running for 10 hours+ everyday... it ends successfully but the 14-Day History is never showing in the dashboard... I noticed two task taking most of the time Step 'DTSStep_ExecuteSQLTask_SC_EventParame

  • TS1424 How to stop a download in iTunes

    Hi so I was downloading a whole season for the Simpsons on iTunes and I want to cancel and get a refund on it.I tried deleting but it doesn't work.Not even pausing works!Help please before my iPod dies?

  • I can't re-install WMP???

    I wanted to re-install "Windows Media Player 9" for Mac OSX and so i deleted the one that i had. I downloaded WMP 9 from the internet and what i got was a "Toast Application" file called "WindowsMediaInstaller-1.bin". When i opened it a message came

  • Getting ready for Leapard Installation

    I have a USB2 external hard drive and would like to do a clean install of Leapard (when it arrives). My question is what is the best way to copy all my data, applications etc to the external drive, install the new OSx (Leapard)then restore the data/f