0

c#を使用してExchangeServer2007のすべての会議室を検索しようとしています。EWSマネージAPIを使用してこれを行う簡単な方法を見つけました。

http://msdn.microsoft.com/en-us/library/exchange/hh532566(v=exchg.80).aspx

残念ながら、GetRoomLists()はExchange Server 2007では機能しません。ExchangeServer2007で会議室を見つける方法を知っているか、機能している人がいれば、それは大きな助けになると思います。Exchangeサーバーで利用可能なすべての会議室を確認してから、それらのプロパティを使用したいと思います。

既存のすべての部屋を表示して、[電話/メモ]タブ情報などのプロパティを使用する方法はありますか?

LDAPを使用していましたが、「サーバーが動作していません」というエラーが表示され続けます。間違ったクレデンシャルを使用しているのではないかと思いました。したがって、私はグーグルで試しましたが、それは私を助けませんでした。

同封の私のコードを見つけてください:-

        using (DirectoryEntry dir2 = new DirectoryEntry("LDAP://www.google.com/DC=www,DC=google,DC=com", null, null,  AuthenticationTypes.Encryption))
        {
           dir2.RefreshCache();

            DirectorySearcher adSearch = new DirectorySearcher(dir2);
            adSearch.Filter = "(&(objectClass=*)(msExchRecipientDisplayType=7))";
            SearchResultCollection adResult = adSearch.FindAll();

            foreach (SearchResult item in adResult)
            {

                ResultPropertyCollection property = item.Properties;

                ResultPropertyValueCollection name = property["name"];
                ResultPropertyValueCollection proxyAddresses = property["proxyAddresses"];
                ResultPropertyValueCollection legacyExchangeDN = property["legacyExchangeDN"];

                ..........
        }
}

同封のコードでエラーが発生します:- dir2.RefreshCache(); 何が間違っているのかわかりません。私は次のようなさまざまなLDAP値を試しました:- using (DirectoryEntry dir2 = new DirectoryEntry("LDAP://ldap.google.com/DC=www,DC=google,DC=com", null, null, AuthenticationTypes.Encryption))

using (DirectoryEntry dir2 = new DirectoryEntry("LDAP:///DC=www,DC=google,DC=com", null, null, AuthenticationTypes.Encryption))

using (DirectoryEntry dir2 = new DirectoryEntry("LDAP://DC=www,DC=google,DC=com", null, null, AuthenticationTypes.Encryption))

しかし、何も私を本当に助けませんでした。

私が間違っていることを知っていますか?

同封のスタックトレースを見つけてください。

 at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail)
   at System.DirectoryServices.DirectoryEntry.Bind()
   at System.DirectoryServices.DirectoryEntry.RefreshCache()
   at Test_Exchange.Program.Main(String[] args) in C:\Inetpub\wwwroot\Test Exchange\Test Exchange\Program.cs:line 26
   at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
   at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

どんな助けや提案も大歓迎です。

前もって感謝します !!

4

1 に答える 1