by Njål

Outlook 2010 & Powershell: Importing all email addresses in Sent Items to Autocomplete list

If you have reinstalled Outlook or perhaps set up your email account on a new PC – you’ll be pretty annoyed that the AutoComplete list in Outlook is empty.

This list has nothing to do with your contact list – it’s just a list of people you have sent emails to. Until Outlook 2010 this list was handled locally by Outlook – not on the Exchange/email server. The list used to be a relatively simple .nk2 file.

 

In Outlook 2010 this list is now stored in a separate Address Group called Suggested Contacts.  You’ll find this Group under Contacts in Outlook. Like any other Address Group.

 

 

This is actually a lot better than using the nk2 files – which had the habit of corrupting themselves. Another advantage is that the Autocomplete list in Outlook 2010 should work across different pc’s – given you are using Exchange server (or some other ActiveSync server like Kerio etc.)

Nevertheless – here’s a script that loops through all Emails in SentItems and adds Names & Emails of Recipients to the Suggested Contacts group. This will make your autocomplete work like a charm again. The script can relatively easy be modified to scan through your inbox and add all email addresses there as well.

 

# OUTLOOK AUTOCOMPLETE POWERIMPORT
#
# Author: N. Gjermundshaug - Degree Consulting Group AS - www.degree.no
#
# This script requires Outlook to be installed and configured. It scans through the SentItems folder.
# For each sent email, it loops through each Recipient - and adds the recipient to the "Suggested Contacts" Address Group.
# Contacts in the "Suggested Contacts" will be displayed in the autocomplete field - when composing new emails (like nk2).
# Contacts are only added once from the script.

$outlook = new-object -com outlook.application
$olFolders = "Microsoft.Office.Interop.Outlook.OlDefaultFolders" -as [type]
$namespace = $outlook.GetNameSpace("MAPI")
$sentItems = $namespace.getDefaultFolder($olFolders::olFolderSentMail)
$alreadyAddedEmails = @() #Empty Array
$counter = 0;
$totalItems = $sentItems.items.count;

Write-Host "Scanning through" $totalItems "emails in SentItems"

$contacts = $outlook.Session.GetDefaultFolder($olFolders::olFolderSuggestedContacts)


##############################################################################################################
# FUNCTION - Adds Name/Email to SuggestedContacts - Unless it has already been added before (by this script).
##############################################################################################################
Function AddToSuggestedContactsIfNotAlreadyAdded ($name, $email)
{

    if(($name -eq "") -or ($email -eq "") -or ($name -eq $null) -or ($email -eq $null)){
        return;
    }

    $name = $name.Replace("'", "").Replace("""", "")


    $contactAlreadyAdded = $false

    foreach ($elem in $global:alreadyAddedEmails) {
        if(($elem.ToLower() -eq $email.ToLower())){
            $contactAlreadyAdded = $true
            Write-Host  ($global:counter)"/"($totalItems)  "SKIPPED " $name.PadRight(25," ") "-" $email
            return;
        }
    }

    if(!$contactAlreadyAdded )    {
        $newcontact = $contacts.Items.Add()
        $newcontact.FullName = $name
        $newcontact.Email1Address = $email
        $newcontact.Save()
        $global:alreadyAddedEmails += $email
        Write-Host ($global:counter)"/"($totalItems)  "ADDED   " $name.PadRight(25," ") "-" $email
    }
}

# Loop through all emails in SentItems
$sentItems.Items | % {

    #Loop through each recipient
    $_.Recipients | %{
        AddToSuggestedContactsIfNotAlreadyAdded $_.Name  $_.Address
    }
    $global:counter = $global:counter + 1
}

Write-Host "Done!"
$outlook.Quit()

 

 

Other keywords: Rebuild Cache Restore Entry Post Migration Auto Complete Repair Batch Bulk Auto Completion PS1 Import

by Njål

Outlook Web App 2010 Auto login

Microsoft Exchange Server 2010

This one goes out to all my fans out there. A simple html page that automatically logs you in to Outlook Web App. Handy when webmail is the only thing you have access to, and you canstantly keep getting logged out (since your nazi sysadmin refuses to extend the session timeout period).

<html>
  <body style="display: none">
    <form action="https://exchangeserver.com/owa/auth/owaauth.dll" method="POST" name="logonForm" ENCTYPE="application/x-www-form-urlencoded" id="loginForm">
      <input type="hidden" name="destination" value="https://exchangeserver.com/owa/">
      <input type="hidden" name="username"  value="joe@scrotum.org" >
      <input type="hidden" name="password"  value="Balls_1234$">
      <input type="hidden" name="flags" value="4">
      <input type="hidden" name="forcedownlevel" value="0">
      <input type="radio"  name="trusted" value="4" class="rdo" checked>
      <input type="hidden" name="isUtf8"  value="1">
    </form>
    <script type="text/javascript">
      document.forms["logonForm"].submit();
    </script>
  </body>
</html>

Replace action, destination, username & password. Save this file to your desktop etc. and create a shortcut/bookmark to it. You’re done.

This can also be used to facilitate one-click login into OWA from an intranet etc.

 

by Andreas

The attachment size exceeds the allowable limit

Microsoft Outlook 2010:

“the attachment size exceeds the allowable limit”

Great error message, greetings from Microsoft! It has now (apparently) deliberately been put up a few obstacles by the overlords in Seattle to limit the maximum size of any email attachment to 20MB. Sounds ridicilously low these days, but at least there are other options. Check out Filemail.com to try a free (and: important, important! : AD FREE) service to send large files easy. It also has other features (I especially like the album function), worth sacrificing a couple of minutes to check out. No need to register before you try it either.

PS: There is a blog entry about Filemail.com on Degree Blog (written in Norwegian).

PPS: there is a “hack” where you adjust the limit in the registry but:
1. That doesnt mean your ISP allows the size you want, what if you have 200MB you want to send?
2. You are changing your registry.. not for the every day user

PPPS: I am a developer. I dont know about the tweaks and configuration possibilities in Exchange 2010. There might be ways around this, but show me the administrator or the ISP that agrees that emails with 500MB attachments are necessary. They don’t care that your holiday photos were taken in RAW format with a Canon 500D. They just don’t care..

by Degree Admin

Litt historie om utviklingen av Sharepoint

1997 – 1999

Før SharePoint  var det et produkt ved navn Site Server (og Site Server Commerce Edition) som inneholdt funksjoner som blant annet webinnhold og replikasjon, analyse av nettsted, tilpassning, indeksering / søk, dokumenthåndtering og e-handel. I 1998 annonserte Microsoft at neste versjon av Exchange, kodenavn Platinum, ville inkludere  Web Store som var designet for håndtering av dokumenter og web-innhold, samt e-post. Et nytt produkt, kodenavn Tahoe, ville styrke Platinum ved å innføre dokumenthåndtering via en teknologi kalt WebDAV ( Dokument redigering og versjonskontroll) og en forbedret indeksering / søkemotor. Kombinasjonen av Platinum og Tahoe ville være Microsofts neste generasjons meldingstjenester, samarbeid og dokumenthåndterings plattform.

2000 – 2001

I 2000 lanserte Microsoft Windows Server 2000 og SQL Server. Exchange Server 2000 ble også lansert. I oktober ble Tahoe beta 2 lansert med et nytt UI basert på Digital Dashboard Resource Kit. Produktnavnet ble SharePoint Portal Server 2001 (SPS 2001). Samme år kjøpte Microsoft leverandøren nCompass som drev med innholdsbehandlingssystemer, og omdøpte produktet til Content Management Server 2001 (CMS 2001). Microsoft lanserte også et gratis tilleggsprogram til Office 2000 ved navn SharePoint Team Services (STS) som gav webbaserte sammarbeidsfunskjoner.

2002 – 2003

I oktober 2003 ga Microsoft ut en ny versjon av Office – Office 2003 – og inkluderte nye oppgraderte SharePoint områder innenfor Office. STS ble omdøpt til Windows SharePoint Services (WSS), og ble en del av Windows Server 2003. Dette gav et samarbeidsområde og et “web part” grensesnitt bygget med ASP.NET. SPS v2  bygget på toppen av WSS og navngitt Microsoft Office SharePoint Portal Server 2003 (SPS 2003). SPS inneholdt indeksering / søk, tilpassning og forbedret ledelse.

2004 – 2006

CMS og SPS ble slått sammen og ASP.NET v2 som ble lansert i slutten av 2005 omfattet innebygde “webparts”. En felles funksjon for å utvikle oppgaver rundt ble introdusert – Windows Workflow Foundation (WinWF, “Workflows”). Akkurat som Windows SharePoint Services (WSS), ville WinWF bli et innebygd tilleggsprogram til Windows Server og gi en arbeidsflyts tjeneste som alle andre programmer kan bygge på. I 2005 kjøpte Microsoft Groove som er et peer-to-peer (P2P) team-basert samarbeids produkt som også inkluderer synkronisering av SharePoint-sites. Microsoft lanserte også Business Scorecard Manager 2005 (BSM 2005) med integrasjon mot SharePoint og i 2006 kjøpte de ProClarity som skal kjøre sammen med MOSS 2007 med avanserte BI muligheter.