取得帳戶資訊
本主題將作為受 信任 Outlook 應用程式 對象的輸入自變數,並使用 Account 物件來顯示目前 Outlook 配置檔可用之每個帳戶的詳細數據。
範例
注意事項
Helmut Obertanner 提供下列程式代碼範例。 Helmut 的專業知識適用於 Visual Studio 和 Outlook 的 Office 開發人員工具。
下列程式代碼範例包含 Sample 類別的 DisplayAccountInformation 方法,實作為 Outlook 載入宏專案的一部分。 每個項目都會新增以 Microsoft.Office.Interop.Outlook 命名空間為基礎的 Outlook 主要 Interop 元件參考。
If you use Visual Studio to test this code example, you must first add a reference to the Microsoft Outlook 15.0 Object Library component and specify the Outlook variable when you import the Microsoft.Office.Interop.Outlook namespace. The Imports or using statement must not occur directly before the functions in the code example but must be added before the public Class declaration. The following lines of code show how to do the import and assignment in Visual Basic and C#.
Imports Outlook = Microsoft.Office.Interop.Outlook
using Outlook = Microsoft.Office.Interop.Outlook;
以下是 Visual Basic 程式代碼範例,後面接著 C# 程式代碼範例。
Imports Outlook = Microsoft.Office.Interop.Outlook
Namespace OutlookAddIn2
Class Sample
Shared Sub DisplayAccountInformation(ByVal application As Outlook.Application)
' The Namespace Object (Session) has a collection of accounts.
Dim accounts As Outlook.Accounts = application.Session.Accounts
' Concatenate a message with information about all accounts.
Dim builder As StringBuilder = New StringBuilder()
' Loop over all accounts and print detail account information.
' All properties of the Account object are read-only.
Dim account As Outlook.Account
For Each account In accounts
' The DisplayName property represents the friendly name of the account.
builder.AppendFormat("DisplayName: {0}" & vbNewLine, account.DisplayName)
' The UserName property provides an account-based context to determine identity.
builder.AppendFormat("UserName: {0}" & vbNewLine, account.UserName)
' The SmtpAddress property provides the SMTP address for the account.
builder.AppendFormat("SmtpAddress: {0}" & vbNewLine, account.SmtpAddress)
' The AccountType property indicates the type of the account.
builder.Append("AccountType: ")
Select Case (account.AccountType)
Case Outlook.OlAccountType.olExchange
builder.AppendLine("Exchange")
Case Outlook.OlAccountType.olHttp
builder.AppendLine("Http")
Case Outlook.OlAccountType.olImap
builder.AppendLine("Imap")
Case Outlook.OlAccountType.olOtherAccount
builder.AppendLine("Other")
Case Outlook.OlAccountType.olPop3
builder.AppendLine("Pop3")
End Select
builder.AppendLine()
Next
' Display the account information.
Windows.Forms.MessageBox.Show(builder.ToString())
End Sub
End Class
End Namespace
using System;
using System.Text;
using Outlook = Microsoft.Office.Interop.Outlook;
namespace OutlookAddIn1
{
class Sample
{
public static void DisplayAccountInformation(Outlook.Application application)
{
// The Namespace Object (Session) has a collection of accounts.
Outlook.Accounts accounts = application.Session.Accounts;
// Concatenate a message with information about all accounts.
StringBuilder builder = new StringBuilder();
// Loop over all accounts and print detail account information.
// All properties of the Account object are read-only.
foreach (Outlook.Account account in accounts)
{
// The DisplayName property represents the friendly name of the account.
builder.AppendFormat("DisplayName: {0}\n", account.DisplayName);
// The UserName property provides an account-based context to determine identity.
builder.AppendFormat("UserName: {0}\n", account.UserName);
// The SmtpAddress property provides the SMTP address for the account.
builder.AppendFormat("SmtpAddress: {0}\n", account.SmtpAddress);
// The AccountType property indicates the type of the account.
builder.Append("AccountType: ");
switch (account.AccountType)
{
case Outlook.OlAccountType.olExchange:
builder.AppendLine("Exchange");
break;
case Outlook.OlAccountType.olHttp:
builder.AppendLine("Http");
break;
case Outlook.OlAccountType.olImap:
builder.AppendLine("Imap");
break;
case Outlook.OlAccountType.olOtherAccount:
builder.AppendLine("Other");
break;
case Outlook.OlAccountType.olPop3:
builder.AppendLine("Pop3");
break;
}
builder.AppendLine();
}
// Display the account information.
System.Windows.Forms.MessageBox.Show(builder.ToString());
}
}
}