标签: exchange-server

访问没有Outlook的Exchange Server

是否有访问不具有Exchange服务器的方法IMAPPOP3没有启用Outlook?

Outlook Express似乎不支持Exchange(仅限IMAP and POP3).

email outlook exchange-server email-client

9
推荐指数
1
解决办法
2万
查看次数

Exchange 2003 - 用于查找房间/资源可用性的API?

我需要公开来自Web服务的房间可用性信息,这些信息将被许多其他应用程序使用.可用性信息存储在Exchange 2003中,现在可以使用Outlook 2003/2007进行查看.

我应该使用什么API或Web服务(如果可用)来获取这些信息?我想我可以使用Outlook API来实现它,但在这种情况下这是不可行的.此时也无法升级到Exchange 2007或更新版本.我想用C#编写应用程序,但假设一般API可能是基于COM的.

.net exchange-server exchange-server-2003

9
推荐指数
1
解决办法
1550
查看次数

Exchange Web服务 - 发送带附件的电子邮件

我是新手使用EWS(Exchange Web服务),我正在寻找一个简单的示例,演示如何发送带附件的电子邮件.我搜索了一个例子,我找不到任何简单明了的东西.我找到了有关如何发送电子邮件但未发送带附件的电子邮件的示例.

有没有人有他们推荐的例子的链接?在这里发布一个例子也可以正常工作!

exchange-server exchangewebservices

9
推荐指数
1
解决办法
1万
查看次数

使用EWS for Exchange 2010获取组织者的日历约会

我有一个同步应用程序与Exchange 2010同步约会,我有一些问题.

  1. UserA创建约会并将UserB添加为与会者,这意味着UserA是约会的组织者,UserB Outlook日历将创建约会条目.
  2. UserA和UserB日历约会将具有自己的ID(UniqueID).
  3. 例如,如果我只获得UserB日历约会的ID(UniqueID),那么这是一种检索UserA日历约会的方法吗?因为我认为他们应该是组织者和参加者预约之间的一些联系,我只是不知道如何.

exchange-server exchangewebservices

9
推荐指数
1
解决办法
1万
查看次数

c#以编程方式从Exchange服务器读取电子邮件

当您在网上搜索时,您会找到"如何以编程方式阅读电子邮件"的简单答案...... Al网站正在解释大部分相同的内容,例如此页面. http://omegacoder.com/?p=454

// depends from Exchange server version      
        service.Credentials = new NetworkCredential("MDR", "password", "zzz");
        service.AutodiscoverUrl("mdr@zzz.be");
        object o = service.FindItems(WellKnownFolderName.Inbox, new ItemView(10));
        FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, new ItemView(10));
        foreach (Item item in findResults.Items)
        {
            Console.WriteLine(item.Subject);
        }
Run Code Online (Sandbox Code Playgroud)

它在执行autodiscoverURL行时失败.错误显示"无法找到自动发现服务".

所以我进一步搜索了这个网站来自微软https://www.testexchangeconnectivity.com/#&&/wEXAQUBcwUBME93h2+JjI0+MV2gTqcRL0g43z9m这里你可以测试你的邮件服务器....当我传递参数时,我得到以下错误. ...

但我还是不明白问题是什么?我是否需要向DNS添加记录?有人可以帮忙吗?

Attempting to test potential Autodiscover URL https://autodiscover.zzz.be/AutoDiscover/AutoDiscover.xml
 Testing of this potential Autodiscover URL failed.
 Test Steps
 Attempting to resolve the host name autodiscover.ncb.be in DNS.
 The host name resolved successfully.
 Additional Details
 IP addresses returned: 213.246.192.205

Testing TCP …
Run Code Online (Sandbox Code Playgroud)

c# exchange-server exchange-server-2007

9
推荐指数
1
解决办法
4万
查看次数

Exchange Powershell - 如何从脚本内部调用Exchange 2010模块?

我正在编写一个脚本,它可以完成AD和Exchange的许多工作,只需要进入GUI的一部分,我需要开始使用Exchange,但是看不到我可以手动指定包含Exchange模块的位置.我熟悉的正常过程是import-module activedirectory,但import-module exchange不起作用.

我执行了Get-Module -ListAvailable | 选择名称,看不到任何指示Exchange的内容.但是,Exchange管理外壳程序IS加载在我正在处理的Exchange服务器上.

有谁知道如何在我的脚本中包含Exchange 2010模块,以便我可以在内部使用特定于Exchange的cmdlet?TIA ...

powershell exchange-server

9
推荐指数
2
解决办法
21万
查看次数

处理EWS限制策略

处理EWS限制策略的有效方法是什么?

我正在尝试阅读邮箱中的每封电子邮件以及下载所有附件.我遇到的问题是Exchange经常会返回异常说The server cannot service this request right now. Try again later..似乎很明显,我必须达到我的极限.搜索我可以看到这个错误很可能是因为我每分钟花费多少时间来处理CAS.限制政策似乎是EWSPercentTimeInCAS.

由于每个查询只能收到1,000封电子邮件,因此我需要查询所有57,000封电子邮件.我怎样才能做到这一点?

请注意,我并没有试图规避限制政策.想到的唯一想法是Thread.Sleep(30000)每次检索1,000封电子邮件时发出声明(我的搜索结果限制).然而不理想应该工作,因为获取1,000个项目花费的时间要少得多.

此问题似乎源于下载附件.邮箱总共有7,000个附件.

c# exchange-server exchangewebservices

9
推荐指数
1
解决办法
3544
查看次数

如何查询Active Directory对象的有效权限?

我正在尝试以编程方式确定当前用户是否对给定的Active Directory对象具有某些权限(特别是在这种情况下,我正在尝试确定用户是否具有另一个Exchange用户或通讯组列表对象的"代理发送"权限).

我已经想通了如何访问ntSecurityDescriptor使用ADSI属性:我可以在枚举的ACE IADsSecurityDescriptorDiscretionaryACL财产.但:

  • 如何根据该数据确定受托人是否明确允许或拒绝"发送为"许可?
  • 如果通过组成员资格间接授予权限,我该如何发现?我是否真的必须通过(递归)检查用户所属的所有组来自己解析有效权限?当然必须有一个API用于该任务......

FWIW,我使用ActiveDs.dll类型库在Delphi中编码(即本机Win32代码),因此特定于.NET的解决方案对我没有多大帮助,除非他们的源代码为我提供了如何在本机中执行相同操作的线索码.PowerShell也是如此.


在任何人开始之前:我已经知道了PR_EMS_AB_PUBLIC_DELEGATESPR_EMS_AB_PUBLIC_DELEGATES_BL_O扩展的MAPI属性.但是,这不是我追求的.这些属性引用"代表发送"-right(又名委托),而不是"发送为"权限,这是完全不同的事情.

permissions exchange-server adsi active-directory

9
推荐指数
1
解决办法
3465
查看次数

EWS - 访问所有共享日历

我有以下代码:

    private void ListCalendarFolders(ref List<EBCalendar> items, int offset)
    {
        var pageSize = 100;
        var view = new FolderView(pageSize, offset, OffsetBasePoint.Beginning);
        view.PropertySet = new PropertySet(BasePropertySet.FirstClassProperties);
        view.PropertySet.Add(FolderSchema.DisplayName);
        view.PropertySet.Add(FolderSchema.EffectiveRights);

        view.Traversal = FolderTraversal.Deep;

        FindFoldersResults findFolderResults = service.FindFolders(WellKnownFolderName.MsgFolderRoot, view);
        foreach (Folder myFolder in findFolderResults.Folders)
        {
            if (myFolder is CalendarFolder)
            {
                var folder = myFolder as CalendarFolder;
                items.Add(EBCalendar.FromEWSFolder(folder));
            }
        }

        if (findFolderResults.MoreAvailable)
        {
            offset = offset + pageSize;
            ListCalendarFolders(ref items, offset);
        }
    }
Run Code Online (Sandbox Code Playgroud)

哪里service是一个ExchangeService实例.不幸的是,它仍然列出了已删除的文件夹,并且没有列出共享日历.

如何让它列出所有共享日历,如何让它不包括已删除的文件夹?

.net c# exchange-server exchangewebservices office365

9
推荐指数
1
解决办法
1万
查看次数

在C#中连接到Microsoft Exchange PowerShell

我正在尝试从C#.NET WinForms应用程序连接到远程PowerShell.我的目标是创建自己的Microsoft PowerShell ISE版本.所以我需要一种从远程计算机上的应用程序执行PowerShell脚本的方法.我已经创建了几种方法,并在我的应用程序中在本地计算机上进行了测试.如果我不使用WSManConnectionInfo和使用使用(运行空间remoteRunspace = RunspaceFactory.CreateRunspace()) ,我可以执行脚本本地,如果它是真实的PowerShell(小脚本变量使用,使用输出数据英尺,FL,做了很多的其他的事情我通常使用PowerShell.问题开始时我添加WSManConnectionInfo并指向我的Exchange服务器,而不是使用本地连接的.现在看来,这是能够执行像基本的东西"获得的邮箱",但只要我尝试管的事,使用一些脚本功能,如$ variables它打破说它不受支持.

同样,我必须禁用powershell.AddCommand("out-string"); 什么时候不在本地使用它.

System.Management.Automation.dll中发生了未处理的"System.Management.Automation.RemoteException"类型异常.

附加信息:术语"Out-String"不被识别为cmdlet,函数,脚本文件或可操作程序的名称.检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试.

如果我不强制远程连接但只是在本地执行,则不会出现相同的错误.似乎SchemaUri只对执行基本命令非常严格.我看到了其他使用非常直接信息的人的例子:

powershell.AddCommand("Get-Users");
powershell.AddParameter("ResultSize", count);
Run Code Online (Sandbox Code Playgroud)

但是通过这种方法,我将不得不定义许多可能的选项,我不想通过定义参数和其他东西.我只是想加载"脚本"并像在PowerShell窗口中一样执行它.这是我现在使用的一个例子.

    public static WSManConnectionInfo PowerShellConnectionInformation(string serverUrl, PSCredential psCredentials)
    {
        var connectionInfo = new WSManConnectionInfo(new Uri(serverUrl), "http://schemas.microsoft.com/powershell/Microsoft.Exchange", psCredentials);
        //var connectionInfo = new WSManConnectionInfo(new Uri(serverUrl), "http://schemas.microsoft.com/powershell", psCredentials);
        connectionInfo.AuthenticationMechanism = AuthenticationMechanism.Basic;
        connectionInfo.SkipCACheck = true;
        connectionInfo.SkipCNCheck = true;
        connectionInfo.SkipRevocationCheck = true;
        connectionInfo.MaximumConnectionRedirectionCount = 5;
        connectionInfo.OperationTimeout = 150000;
        return connectionInfo;
    }
    public static PSCredential SecurePassword(string login, string …
Run Code Online (Sandbox Code Playgroud)

.net c# powershell exchange-server

9
推荐指数
1
解决办法
5905
查看次数