Le Café Central de

                    ... Deva blogs!!

  • Le Café Central de DeVa

    Monitoring event sink # 19 - SMTPReg.vbs


    Are you looking to register the SMTP event sink? Then we need to make use of script called "SMTPReg.vbs". The following event management script demonstrates using the Server Extension Objects (SEO) to manage event bindings for the SMTP service.

    Please click here to download the "SMTPReg.vbs"

  • Le Café Central de DeVa

    Monitoring Event Sink # 18 - How to write an OnArrival-type SMTP event sink in managed code (using Visual Studio.NET)


    I found this wonderful article talks about "How to write an OnArrival-type SMTP event sink in managed code by using Visual Studio .NET 2003". It's an interactive article, with step-by-step ways of illustration to create event sink in Managed environment(.Net).

    Note: This sample event sink can be used to handle incoming SMTP commands and messages and to process them as needed.

    This article contains an overview of how to write event sinks for SMTP events in managed code by using wrappers that obscure some of the details of communicating with the unmanaged server.

  • Le Café Central de DeVa

    WebDAV Sample(s): How to get item property values from Exchange Store


    Please find this wonderful article, which talks about "How to get item property values using WebDAV". This article has good example's in VB.Net, C#.Net, C++.Net and VBScript. 

    It talks about, how you can construct the XML body of a WebDAV PROPFIND Method manually. The request is for the displayname Field for a folder. After the request has been constructed, the code passes the XML string to an XMLHTTP Component Object Model (COM) object and sends the PROPFIND Method request to the server.

  • Le Café Central de DeVa

    Edge Transport server transport agents - List of agent names, priority and its SMTP events


     Edge Transport server transport agents: Find the list of agent names, priority and its SMTP events.

    Agent name


    SMTP events

    Connection Filtering agent


    OnConnectEvent, OnMailCommand, OnRcptComand, OnEndOfHeaders

    Address Rewriting Inbound agent


    OnRcptCommand, OnEndOfHeaders

    Edge Rule agent



    Content Filter agent



    Sender ID agent



    Sender Filter agent


    OnMailCommand, OnEndOfHeaders

    Recipient Filter agent



    Protocol Analysis agent


    OnEndOfHeaders, OnEndOfData, OnReject, OnRsetCommand, OnDisconnectEvent

    Attachment Filtering agent



    Address Rewriting Outbound agent


    OnRcptCommand, OnEndOfHeaders

  • Le Café Central de DeVa

    Technical Chat - Open XML SDK and Road Map


    Technical chat with Eric White (Open XML Technical Evangelist) & Zeyad Rajabi (Office Program Manager) at Microsoft, presenting a quick introduction of the Open XML SDK and the road map.

    For more details regarding this, please visit http://openxmldeveloper.org/ and http://msdn.microsoft.com/office/xml

  • Le Café Central de DeVa

    Outlook Mobile Service - How it works? Advantages? Features?


    Two ways to communicate with your colleagues, business partners, and family are e-mail messages and your mobile phone. Both have their advantages, but managing your contacts, correspondence, and appointments by using two different media can be cumbersome.

    Outlook Mobile Service is a new feature in Microsoft Office Outlook 2007 that you use to create and send text messages as well as multimedia messages to a mobile device from within Outlook in a manner similar to e-mail messages.

    Outlook Mobile Service makes it easier to use both these media and is fully integrated with Outlook. With Outlook Mobile Service, composing and sending a text or multimedia message is now as quick and easy as creating and sending an e-mail message. After the message is sent, you can see it in the Sent Items folder in your Inbox.

    For more details, read this wonderful article. It describes about the advantages, how it works and its features.

  • Le Café Central de DeVa

    How to manage all email accounts with Microsoft Outlook 2003/2007?


    Now you can manage all your email accounts with Microsoft Outlook 2003 / 2007? That also free. How it's possible? 

    • With the Outlook Connector, you can view your Windows Live Hotmail e-mail in Outlook alongside your other e-mail accounts.  
    • Outlook Connector provides a free solution for managing your Windows Live Hotmail e-mail and contacts from within Outlook.
    • With the new release of the Outlook Connector, you can connect your Windows Live Hotmail account in Microsoft Office Outlook 2007 or Outlook 2003 free of charge.

    For more details, read this article

  • Le Café Central de DeVa

    Interactive Command reference guide: Outlook 2003 & Outlook 2007


    Wondering where the favorite Outlook 2003 commands are located in Outlook 2007? Or just want to explore the rich new design with a little guidance?

    You're in the right place. I found this well developed visual, interactive reference guide to help you quickly learn where things are.

    Click here to learn more

  • Le Café Central de DeVa

    What's special in Exchange Server 2007 SP1?


    This article is for all Exchange users. When we work with our customers, they eagerly want to know differences, new features, comparisons, what were its new and special features, product reviews or comprehension information about Exchange Server 2007,

    Please find the two useful article, which talks about 'end-to-end' richfull features related information:

    Review the features of Exchange Server 2007 including SP1

    Comprehensive information on Exchange Server 2007 with SP1

  • Le Café Central de DeVa

    Oops!! I'm late!!


    Oops!! I'm quite late to talk about this, but it's worthy one.

    Do you know about Anywhere access facility and other new features available with Exchange Server 2007?

    Exchange Server 2007 - Anywhere

    With Exchange Server 2007, employees get anywhere access* to their e-mail, voice mail, calendars, and contacts from a variety of clients and devices.

    Please find this article to know more?

  • Le Café Central de DeVa

    List of Ports used by Exchange Server


    Please find the list of Ports used by Exchange Server:

    Ports used by Exchange Server





    TCP: 25

    The SMTP service uses TCP port 25.


    TCP/UDP: 53

    DNS listens on port 53. Domain controllers use this port.


    TCP: 691

    The Microsoft Exchange Routing Engine service (RESvc) listens for routing link state information on this port.


    TCP/UPD: 389

    Lightweight directory access protocol (LDAP) used by Microsoft Active Directory® directory service, Active Directory Connector, and the Microsoft Exchange Server 5.5 directory use this port.


    TCP/UDP: 636

    LDAP over Secure Sockets Layer (SSL) uses this port.


    TCP/UDP: 379

    The Site Replication Service (SRS) uses this port.


    TCP/UDP: 390

    This is the recommended alternate port to configure the Exchange Server 5.5 LDAP protocol when Exchange Server 5.5 is running on an Active Directory domain controller.


    TCP: 3268

    Global catalog. The Windows 2000 and Windows Server 2003 Active Directory global catalog (a domain controller "role") listens on TCP port 3268.


    TCP: 3269

    Global catalog over SSL. Applications that connect to TCP port 3269 of a global catalog server can transmit and receive SSL encrypted data.


    TCP: 143

    Internet Message Access Protocol (IMAP) uses this port.


    TCP: 993

    IMAP4 over SSL uses this port.


    TCP: 110

    Post Office Protocol version 3 (POP3) uses this port.


    TCP: 995

    POP3 over SSL uses this port.


    TCP: 119

    Network News Transfer Protocol (NNTP) uses this port.


    TCP: 563

    NNTP over SSL uses this port.


    TCP: 80

    HTTP uses this port.


    TCP: 443

    HTTP over SSL uses this port.

  • Le Café Central de DeVa

    SMTP Commands Part # 3 - List of Server reply codes


    When we execute the SMTP command, we'll receive a reply from the mail server in the form of a three digit number followed by information describing the reply.

    For example,

    250 OK

    Please find the list of reply codes from the Server.


     A system status or help reply.


     Help Message.


     The server is ready.


     The server is ending the conversation.


     The requested action was completed.


     The specified user is not local, but the server will forward the mail message.


     This is a reply to the DATA command. After getting this, start sending the body of the mail message, ending with "\r\n.\r\n."


     The mail server will be shut down. Save the mail message and try again later.


     The mailbox that you are trying to reach is busy. Wait a little while and try again.


     The requested action was not done. Some error occurs in the mail server.


     The requested action was not done. The mail server ran out of system storage.


     The last command contained a syntax error or the command line was too long.


     The parameters or arguments in the last command contained a syntax error.


     The mail server has not implemented the last command.


     The last command was sent out of sequence. For example, you might have sent DATA before sending RECV.


     One of the parameters of the last command has not been implemented by the server.


     The mailbox that you are trying to reach can't be found or you don't have access rights.


     The specified user is not local; part of the text of the message will contain a forwarding address.


     The mailbox that you are trying to reach has run out of space. Store the message and try again tomorrow or in a few days-after the user gets a chance to delete some messages.


     The mail address that you specified was not syntactically correct.


     The mail transaction has failed for unknown causes.

  • Le Café Central de DeVa

    SMTP Commands Part # 2 - Using Telnet on port 25 to test SMTP communication


    Please find the following steps and SMTP commands to test SMTP communication using Telnet on Port 25.

    1.                   At a command prompt, type telnet, and then press ENTER. This command opens the Telnet session.

    2.                   Type set localecho and then press ENTER. This optional command lets you view the characters as you type them. This setting may be required for some SMTP servers.

    3.                   Type set logfile <filename>. This optional command enables logging of the Telnet session to the specified log file. If you only specify a file name, the location of the log file is the current working directory. If you specify a path and a file name, the path must be local to the computer. Both the path and the file name that you specify must be entered in the Microsoft DOS 8.3 format. The path that you specify must already exist. If you specify a log file that doesn't exist, it will be created for you.

    4.                   Type open mail1.fabrikam.com 25 and then press ENTER.

    5.                   Type EHLO contoso.com and then press ENTER.

    6.                   Type MAIL FROM:chris@contoso.com and then press ENTER.

    7.                   Type RCPT TO:kate@fabrikam.com NOTIFY=success,failure and then press ENTER. The optional NOTIFY command defines the particular delivery status notification (DSN) messages that the destination SMTP server must provide to the sender. DSN messages are defined in RFC 1891. In this case, you are requesting a DSN message for successful or failed message delivery.

    8.                   Type DATA and then press ENTER. You will receive a response that resembles the following

    354 Start mail input; end with <CLRF>.<CLRF>

    9.                   Type Subject: Test Sampleand then press ENTER.

    10.               Press ENTER. RFC 2822 requires a blank line between the Subject: header field and the message body.

    11.               Type This is a test message and then press ENTER.

    12.               Press ENTER, type a period ( . ) and then press ENTER. You will receive a response that resembles the following:

    250 2.6.0 <GUID> Queued mail for delivery

    13.               To disconnect from the destination SMTP server, type QUIT and then press ENTER. You will receive a response that resembles the following:

    221 2.0.0 Service closing transmission channel

    14.               To close the Telnet session, type quit and then press ENTER.

  • Le Café Central de DeVa

    SMTP Commands Part # 1- List of SMTP Commands


    Please find the list of SMTP commands and its definitions, which can be used on multiple places. For example it can be used to check event SMTP sinks by sending mails.

    SMTP commands

    SMTP command

    Command function


    Sent by a client to identify itself, usually with a domain name.


    Enables the server to identify its support for Extended Simple Mail Transfer Protocol (ESMTP) commands.


    Identifies the sender of the message; used in the form MAIL FROM:.


    Identifies the message recipients; used in the form RCPT TO:.


    Allows the client and server to switch roles and send mail in the reverse direction without having to establish a new connection.


    The ATRN (Authenticated TURN) command optionally takes one or more domains as a parameter. The ATRN command must be rejected if the session has not been authenticated.


    Provides a mechanism by which the SMTP server can indicate the maximum size message supported. Compliant servers must provide size extensions to indicate the maximum size message that can be accepted. Clients should not send messages that are larger than the size indicated by the server.


    An extension of SMTP. ETRN is sent by an SMTP server to request that another server send any e-mail messages that it has.


    Provides the ability to send a stream of commands without waiting for a response after each command.


    An ESMTP command that replaces the DATA command. So that the SMTP host does not have to continuously scan for the end of the data, this command sends a BDAT command with an argument that contains the total number of bytes in a message. The receiving server counts the bytes in the message and, when the message size equals the value sent by the BDAT command, the server assumes it has received all of the message data.


    Sent by a client to initiate the transfer of message content.


    An ESMTP command that enables delivery status notifications.


    Nullifies the entire message transaction and resets the buffer.


    Verifies that a mailbox is available for message delivery; for example, vrfy ted verifies that a mailbox for Ted resides on the local server. This command is off by default in Exchange implementations.


    Returns a list of commands that are supported by the SMTP service.


    Terminates the session.

    The following table lists the extended SMTP commands that Exchange makes available to the SMTP service.

    Extended SMTP commands

    Extended SMTP command

    Command function


    A method that is used by Microsoft Exchange Server 2003 and Exchange 2000 Server servers to authenticate.


    A method that is used by Exchange 2000 and Exchange 2003 servers to authenticate.


    Provides the ability to propagate message properties during server-to-server communication.


    Adds support for link state routing in Exchange.

  • Le Café Central de DeVa

    Offline Address Book - Birds eye-view


    What is an Offline Address Book?

    An offline address book is a container that stores a collection of offline address lists. Administrators configure available offline address books, and Outlook users can choose which offline address lists they want to download.

    What is an Offline address list?   

    An offline address list is a set of address lists in files that are created and stored on an offline address list server. Users who work offline can connect to an Exchange Server computer and download offline address lists to obtain information about other users in the organization. When you create an offline address book, the specified address lists are converted to a separate set of files and stored in a public folder. When users download the offline address book, this data file is used as the source of information. Outlook 2003 uses offline address book to provide offline access to directory information from global address list (GAL) and from other address lists.

    • Exchange generates new offline address book files & places them in a special public folder, known as a system folder, for Outlook to download.
    • Offline address book files are compressed before they are added to offline address book system folders so that the download to Outlook is minimal.
    • Outlook is scheduled to check periodically for new offline address book files in these system folders, and download the required files.
    • Offline address books typically contain at least one address list that represents the global address list (GAL).
    • Users who are working offline can use this global address list with Messaging Application Programming Interface (MAPI) e-mail clients.

    How it's getting created?

    • Several Exchange Server components work with Active Directory to generate and maintain offline address books.
    • After an offline address book has been created
      • either automatically by Exchange Setup
      • or manually by an administrator using Exchange System Manager
      • Exchange Server and Active Directory work together to maintain the offline address book, keeping it synchronized with changes that may be made in the directory.

    Where it will be displayed?

    • System folders can be displayed in Exchange System Manager, enabling an administrator to view the files that make up the offline address book

    What will be the size of Offline address book? 

    • Offline address book sizes can vary from a few megabytes to a few hundred megabytes. (It depends on various factors)

    Note: Address book size refers to the size of the compressed offline address book files on the Exchange Server, and not the uncompressed, expanded file size for the offline address book files on the Outlook client.

  • Le Café Central de DeVa

    Monitoring event sink # 17 - Sample for adding disclaimer for outoging SMTP messages - VBScript

       1:  <SCRIPT LANGUAGE="VBScript">
       2:  Sub ISMTPOnArrival_OnArrival(ByVal Msg, EventStatus)
       3:    TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer added in a VBScript."
       4:     HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer added in a VBScript."
       6:     If Msg.HTMLBody <> "" Then
       7:        'Search for the "</body>" tag and insert our disclaimer before that tag.
       8:         pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)
       9:         szPartI = Left(Msg.HTMLBody, pos - 1)
      10:         szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))
      11:         Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII
      12:     End If
      14:     If Msg.TextBody <> "" Then
      15:        Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
      16:     End If
      18:     'Commit the content changes to the transport ADO Stream object.
      19:     Msg.DataSource.Save ' Commit the changes into the transport Stream
      20:     EventStatus = cdoRunNextSink
      21:  End Sub
      22:  </SCRIPT>
  • Le Café Central de DeVa

    Monitoring event sink # 16 - Sample for adding disclaimers for outgoing SMTP messages - Visual Basic 6.0


    Visual Basic 6.0 sample

    Dim TextDisclaimer As String
    Dim HTMLDisclaimer As String

    Implements IEventIsCacheable
    Implements CDO.ISMTPOnArrival

    Private Sub IEventIsCacheable_IsCacheable()
        'Just returns S_OK.
    End Sub

    Private Sub Class_Initialize()
      'TODO: Replace the sample disclaimer text with your own text.
      TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer Text."

      HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer Text"
    End Sub

    Private Sub ISMTPOnArrival_OnArrival(ByVal Msg As CDO.IMessage, EventStatus As CDO.CdoEventStatus)
        If Msg.HTMLBody <> "" Then
            Dim szPartI As String
            Dim szPartII As String
            Dim pos As Integer
            'Search for the "</body>" tag and insert the disclaimer before that tag.
    pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)

            szPartI = Left(Msg.HTMLBody, pos - 1)
            szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))
            Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII
        End If

        If Msg.TextBody <> "" Then
            Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf
        End If
        'Commit the content changes to the transport ADO Stream object.

        EventStatus = cdoRunNextSink
    End Sub

  • Le Café Central de DeVa

    Monitoring Event sink # 15 - Check event registration and its item properties


    Whenever if we work with event sink, we need to check the event registration, what're the associated items, its item properties and its importance (whether it is required or not)...

    Event Registration 

    To receive event notifications, you must register with Exchange by creating and saving event registration items.

    Event Registration items 

    An item becomes an event registration item when you set the content class of the item to urn:content-class:storeeventreg.

    Note: For more information, we can get more details from the Content Classes article.

    The following table defines the event properties for an event registration item http://schemas.microsoft.com/exchange/events/ namespace:




    Criteria Field No A Structured Query Language (SQL) Where clause that specifies the conditions that will cause the event to fire.
    Enabled Field No A Boolean value that indicates if an event registration is enabled.
    EventMethod Field Yes Defines which event or events cause notification.
    MatchScope Field No Defines where the event will fire relative to where it is saved.
    Priority Field No The priority of the event. See Event Notification Priority.
    ScriptUrl Field* Yes The name of the script if the event is a script being run by The Script Host Sink.
    SinkClass Field Yes The class identifier (CLSID) or progID of the object that contains the event sink.
    TimerExpiryTime Field** No The time to end an OnTimer event.
    TimerInterval Field** Yes The interval, in minutes, between OnTimer event notifications.
    TimerStartTime Field** Yes The time at which Microsoft® Exchange begins notifying event sinks of the OnTimer event.

    * This field is required only if you use a script to handle the event.
    ** This field is used only for the OnTimer event.

  • Le Café Central de DeVa

    Microsoft Entourage for mac


    Microsoft Entourage:mac


    Microsoft Office 2004 for Mac 114 update released Tuesday, February 12, 2008. There is no update for Office 2008 at this time. Still a bit early.


    Today i found Amir's couple of blog posts which has information on Office 2008.

    How Entourage works

    How Does Entourage Work?

    • The article explains how Entourage works with a mailbox on an Exchange Server.
    • This blog article will encompass the supported versions of Entourage & Exchange Server, Entourage 2004 & 2008, and Exchange 2000, 2003 & 2007.
    • Let's list all the different features in Entourage for which it needs to talk to Exchange Server or any other server in a Windows Active Directory based environment.

    Microsoft's Mac Entourage

    Entourage 2008 - New features

    Entourage 2008 – New Features Part I

    Part I describes features for all users.

    Entourage 2008 – New Features Part II

    In Part II, Amir describes features which are exclusive to Entourage 2008 users in an Exchange organization where they are working with other Outlook users.

  • Le Café Central de DeVa

    Monitoring Event Sink # 14 - Advanced Queuing Engine and SMTP sinks


    Advanced Queuing Engine - SMTP Architecture

    The advanced queuing engine is a key component in Exchange 2003 message handling, because all messages must pass through this engine, even when sender and recipient are located on the same server running Exchange Server 2003. This enables Exchange Server 2003 transport components to process every message. No e-mail message can bypass the transport subsystem.

     Advanced Queuing Engine - Events

    Please find this article, which illustrates, the advanced queuing engine "how it" acts as an information controller or dispatcher of system, store, and transport events to process each message after it reaches the SMTP transport subsystem.

    The above engine dispatches the following events:

    1. OnSubmission
    2. OnPreCategorize
    3. OnCategorize
    4. OnPostCategorize
    5. OnGetMessageRouter
    6. OnMsgTrackLog
    7. OnDnsResolveRecord
    8. OnMaxMsgSize
    9. Storedriver
  • Le Café Central de DeVa

    Monitoring event sink # 13 - Best practices for Event sink registration


    Event sink registration - Best practices

    It's must to know when we try to register the event sink in Excahge environment.

    The following guidelines are helpful when you create event registration items:

    • The scope of an event sink is restricted to a single store.
    • Event registration items are automatically hidden when saved.
    • To be instantiated by Exchange, event sinks in a dynamic-link library (DLL) must have a surrogate host defined.
    • Wrapping the DLL in a COM+ Application assigns the surrogate host automatically.
  • Le Café Central de DeVa

    Monitoring Event Sink # 12 - Event Sinks firing order

    "Which order the event sinks are getting fired" ?
    This is a common question asked by customers, whenever we work event sink related cases. 
    • Take this small example example, when registering for synchronous event notifications, you can set a priority.
    • It specifies when the notification will occur relative to the other event registrations waiting on the same event.  
    Registration Priority: Here we need to understand this registration priority

    The registration priority can have any value within the ranges shown in the following table:

    Priority Decimal value Hexadecimal value
    Highest (first to be notified) 0 0
    Default 65535 0x0000ffff
    Lowest (last to be notified) 2147483647 0x7fffffff


    • Use the decimal value to register the priority.
    • Event registrations with the same priority can fire in any order.
    • Priorities do not apply to asynchronous event registrations.
  • Le Café Central de DeVa

    Part # 4 - Configure Public folder permissions


    Configure Public folder permissions

    Please find the lists of management tasks that you can perform to configure and maintain public folder permissions:

    • How to Add Permissions for Client Users to Access Public Folder Content
      You can use the Add-PublicFolderClientPermission cmdlet or the AddUsersToPFRecursive.ps1 user management script to specify the permissions for the client user. You can create the access rights by using either the predefined permission roles or by creating custom access rights.
    • How to Remove or Replace Public Folder Client Permissions
      You can use the Remove-PublicFolderClientPermission cmdlet or the RemoveUserFromPFRecursive.ps1 script to remove permissions for the client user. You can remove access rights by using either the predefined permission roles or by using the access rights.
      You can use the ReplaceUserWithUserOnPFRecursive.ps1 and ReplaceUserPermissionOnPFRecursive.ps1 scripts to replace client permissions on a public folder.

    • How to View Public Folder Client Permissions Settings
      You can use the Get-PublicFolderClientPermission cmdlet to view the client access rights associated with a public folder.
    • How to Grant the Send As Permission for a Mail-Enabled Public Folder
      You can use Send As permissions to configure a mail-enabled public folder so that users other than the public folder owner can use the mail-enabled public folder to send messages.
      The Send As permission is not granted until after replication has occurred. Replication times depend on your Microsoft Exchange and network configuration.
    • How to Add Administrative Permissions for Users to Access Public Folders
      You can use the Add-PublicFolderAdministratorPermission cmdlet, the Add-ExchangeAdministrator cmdlet, or the Add Exchange Administrator wizard to grant administrative rights for a user to access a public folder or public folder hierarchy.
    • How to Remove Public Folder Administrative Permissions
      You can use the Remove-PublicFolderAdministratorPermission cmdlet, the Remove-ExchangeAdministrator cmdlet, or the Add Exchange Administrator wizard to remove administrative access rights from a user for a public folder or public folder hierarchy.
    • How to View Public Folder Administrative Permission Settings
      You can use the Get-PublicFolderAdministratorPermission cmdlet, the Get-ExchangeAdministrator cmdlet, or the Organization Configuration node to view the administrative rights that are associated with a public folder or public folder hierarchy.
  • Le Café Central de DeVa

    Part # 3 - Managing mail-enabled Public Folders


    Managing mail-enabled Public Folders 

    Please find the following topics provide instructions for the management tasks that you can perform for mail-enabled public folders.

  • Le Café Central de DeVa

    Part # 2 - Managing Public Folders

Page 25 of 29 (706 items) «2324252627»