SharePoint Developer box configured with email send/receive capability using SMTP Service + Visendo SmtpExtender

So you are one of those guy who want to setup a simple email send/receive capability to test various SharePoint notification mechanism for bunch of domain users.

The following were configured and tested in an environment of:

1. Windows Server 2012 R2 + Active Directory Installed + Required users added.

2. SharePoint 2013

3. Outlook 2013 client


1. First of all you need to configure SMTP service in your dev. box.

Note: Though you have an engine which can forward messages across, you still don’t have the POP3 service available within your box (the POP3 service no longer comes with windows server, which was available back in those days when Windows Server 2003 was there).

so how do you get that as most of your client would look for POP3 at a minimal. this is where the Visendo comes into play (btw, if you want to really configure a fully fledged server go ahead and try the exchange server, but for development purposes you really don’t want to spend time configuring exchange isn’t it?.

Test whether the SMTP service is ready before moving to next step – :

2. Install the Visendo following the steps marked in here (the version I used was V1.1.2.637 Demo x64)

Refer to the manual I used here –

The installation binary is here –


My setting for a test user is as follows:



Any settings you play with either Visendo / SMTP service, you need to restart both services

To restart Visendo service (click the Settings top tree node in the UI):


To restart the SMTP service:

WIN + R > Services.msc  > Look for “Simple Mail Transfer Protocol (SMTP) (right click and restart):



By now I am assuming that you have added necessary users to the Visendo to try the next step:

3. Configure outlook mail client to send/receive emails (since the idea is to test send/receive email for multiple users, I have set the configuration of outlook mail to prompt to choose the profile at start up):

How to make outlook prompt to choose profile:




Now to configure my test user, follow the screenshots:









Tested sending and receiving emails from/to outlook client:



Finally Testing the whole with SharePoint:

$email = "" $subject = "SharePoint routed email test" $body = "Email test body.. yey yey" $site = New-Object Microsoft.SharePoint.SPSite "" $web = $site.OpenWeb() [Microsoft.SharePoint.Utilities.SPUtility]::SendEmail($web,0,0,$email,$subject,$body) // A True or False will confirm the message has been sent or not


Throw it all to a console:




1. Worried since the email did not come to outlook Sad smile, then started the usual check at the drop folder location:

– Found an unserved .eml reflecting the time that the email was sent. – wait.. just disappeared, hmm… just now the batch processing got invoked

2. now the email is received at the outlook end.



Happy configuring….

Some useful links I referred:

PowerShell: Set/Configure Document Library with MajorVersionLimit, MajorWithMinorVersionsLimit & require to checkout before editing

Just finished coding a PowerShell function to achieve the following:
Approval Library:
– Require content approval;
– Require items to be checked out;
– Require major versions and minor versions;
– Keep a maximum of 5 major versions and drafts for 1 major version.

Here is the PS function which I coded to satisfy the above design requirement:

function ConfiguringVersioningSettings($webUrl, $listName, $requireCheckOut, $majorVersionLimit, $minorVersionLimit){
       Write-Message "Configuring version settings for $listName..." "cyan"
       $web = Get-SPWeb $webUrl
       $library = $web.Lists[$listName]
       $library.EnableVersioning = $true
       $library.EnableMinorVersions = $true
       $library.MajorVersionLimit = $majorVersionLimit
       $library.MajorWithMinorVersionsLimit = $minorVersionLimit
       $library.ForceCheckOut = $requireCheckOut

Why do we restrict the number of versions?

Out of the box SharePoint keeps all versions in the document library. Once we enable the versioning on libraries all versions size is counted towards the site collection quota, there is no such thing as storing deltas in this case, they’re the full versions. I.e. each time we save the document, SharePoint stores as a separate copy of complete document in the database though we make a small change. Just imagine If we have a 100 MB document with 20 different versions (Around 2 GB of storage capacity). With large documents, even a small but active library can eat up your database in a hurry. If you have a limited site collection storage capacity, this is going to be a big issue to store more number of documents as database reaches it max storage capacity very soon. So, restrict at max 3 major and 3 minor versions at any point in time in the document library.

If you forget to set the limitation, there is no way from SharePoint out-of-the-box to house keep/manage specific versions from document version history. Either you have to remove/delete all versions or all minor versions

To enable version history on a document library choose the library you would like to set version settings.

Library Settings > in the settings page, under General Settings > click Versioning Settings:

– Check the checkbox “Create major and minor (draft) versions” option

– And, check the checkboxes to keep 3 major and 3 minor versions

Happy Point Sharing!