2016-12-15 25 views
0

メールボックスまたはクォータの最大サイズを取得したい。実際に私はメールボックスの空き領域を見つけています。だから私は使用されたスペースと最大スペースを見つけて、そして自由空間を見つけるために差を見つける。C#EWS Managed API:メールボックスの最大サイズまたは割り当て制限を取得する方法

フォルダの使用サイズを見つけるには、以下のコードがあります。私はフルサイズを得るためにすべてのフォルダに繰り返すことができると思います。しかし、どのようにして最大の制限値を得ることができますか?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using Microsoft.Exchange.WebServices.Data; 
namespace ConsoleApplication12 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      ExchangeService service = new ExchangeService(); 
      service.Credentials = new WebCredentials("mail", "pass"); 
      service.Url = new Uri("https://outlook.office365.com/EWS/Exchange.asmx"); 
      ExtendedPropertyDefinition PR_Extended_Message_Size = new ExtendedPropertyDefinition(3592, MapiPropertyType.Long); 
      PropertySet psPropertySet = new PropertySet(BasePropertySet.FirstClassProperties) { PR_Extended_Message_Size }; 
      Folder Inbox = Folder.Bind(service, WellKnownFolderName.Inbox, psPropertySet); 
      long FolderSize = 0; 
      if (Inbox.TryGetProperty(PR_Extended_Message_Size, out FolderSize)) 
      { 
       Console.WriteLine(FolderSize/1024); 
      } 
      Console.ReadKey(); 
     } 
    } 
} 
+0

あなたはextended_message_sizeを照会するのと同じようにそれらを照会できるはずです。ここでクォータのMAPIプロパティ定数を確認します。https://blogs.technet.microsoft.com/outlooking/2013/09/19/mailbox-quota-in-outlook-2010-general-information-and-troubleshooting-tips/ – dlatikay

答えて

0

あなただけの代わりにPR_Extended_Message_Sizeのあなたが持っているコードを使用することができ、クエリdocumentation、「メールを受信することは禁止されている制限(のも最大のサイズに応じて、あるPR_Prohibit_Receive_Quota(16進値0x666A0003)、のためにメールボックス)」を選択します。

+0

私はそれを試みたが、うまくいかなかった。私がしたのは、3592を0x666Aに置き換えたものです。https://msdn.microsoft.com/en-us/library/ee203094(v=exchg.80).aspx – Pratik

+1

しかし、私は間違っていると思います。私はそのプロパティをフォルダにのみ取得しようとしていますか?私はメールボックスにそのプロパティを取得したい。どうやってやるの?それを助けてくれますか? – Pratik

関連する問題