文書番号: 265771 - 最終更新日: 2006年3月1日 - リビジョン: 8.0

eMbedded Visual Basic と VBCE から Pocket Outlook オブジェクトにアクセスする方法

この記事は、以前は次の ID で公開されていました: JP265771
すべて展開する | すべて折りたたむ

概要

この資料では、Microsoft Windows CE Toolkit for Visual Basic 6.0 (VBCE6) または eMbedded Visual Basic 3.0 (eVB) を使用する開発者向けに、Pocket Outlook Object Model (POOM) SDK の概要を説明します。次の内容が含まれています。
  1. Pocket Outlook Object Model (POOM) SDK とは
  2. POOM SDK の入手先
  3. POOM SDK をデバイスにインストールおよび登録する方法
  4. エミュレーション
  5. POOM の概要
  6. POOM SDK でプログラミングを始める方法 (項目は以下のとおりです)
    • ログオンとログオフの方法
    • 新しい連絡先の作成方法
    • 連絡先に関する情報を表示する方法
    • 連絡先の一覧を取得する方法
    • 予定の作成方法
    • 予定の情報を取得する方法
    • 仕事の作成方法
    • 仕事の情報を取得する方法
    • 都市を追加する方法
    • 都市とタイムゾーンの情報を取得する方法
    • 自宅と訪問先を指定する方法
    • 赤外線転送を使用してアイテムを送信する方法
    • 赤外線転送を使用してアイテムを受信する方法

詳細

  1. Pocket Outlook Object Model (POOM) SDK とは

    Pocket Outlook Object Model SDK を使用することにより、Windows CE Toolkits for Visual Basic 6.0 や Microsoft Visual C++ 6.0 (VCCE6) に加えて、eMbedded Visual Tools 3.0 を使用するプログラマに Pocket Outlook のオブジェクト モデルを公開することができます。これにより、連絡先、予定表、仕事のデータをプログラムから管理できるだけでなく、都市やタイムゾーンの情報を参照することも可能になります。
  2. POOM SDK の入手先

    POOM SDK は、次のマイクロソフト Web サイトからダウンロードすることができます。
    http://www.microsoft.com/downloads/details.aspx?FamilyID=78d1a8b7-d606-45b2-9cdc-58bf5a578338&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyID=78d1a8b7-d606-45b2-9cdc-58bf5a578338&displaylang=en)
  3. POOM SDK をデバイスにインストールおよび登録する方法

    : Pocket PC デバイス上の ROM には pimstore.dll ファイルが既に存在するため、Pocket PC の場合は次の手順は不要です。

    POOM SDK をダウンロードしたら、pimstore.exe ファイルを実行してファイルの内容を展開します。POOM を使用するには、Windows CE コンパニオン デバイス上で、pimstore.dll ファイルのインストールと登録を行う必要があります。自己展開型の .exe ファイルをダウンロードして実行すると、各 CPU に対応した DLL が PC にコピーされます。DLL は名前で見分けることができます。たとえば、pimstore_sh3.dll は SH3 プロセッサをサポートします。POOM を使用するには、CPU に対応する pimstore_*.dll をコンパニオン デバイスの \Windows ディレクトリにドラッグします。DLL の名前を、アンダースコアと CPU の指定を削除した "pimstore.dll" に変更します。

    pimstore.dll をデバイスに登録します。これには、いくつかの異なる方法があります。たとえば、次のようにデバイス上で regsvr.exe を実行します。
       \windows\regsvr.exe \windows\pimstore.dll
    					
    別の手段として、POOM SDK の ReadMe.txt に記載されているサンプル コードをコンパイルする方法もあります。
  4. エミュレーション

    POOM SDK は、Pocket PC のエミュレーション環境でサポートされています。

  5. POOM の概要

    Pocket Outlook Object Model は、デスクトップ版の Microsoft Outlook 97 と Microsoft Outlook 98 の Object Model に基づいてモデル化されています。Windows CE デバイスに適した、よりコンパクトな DLL を提供するため、POOM はデスクトップ版 Outlook Object Model の小さなサブセットになっています。

    Pocket Outlook Object Model は、以下の仕様を満たします。
    1. 下位互換性。コンポーネントは次のプラットフォーム上で動作します。
      • Handheld PC 2.0
      • Handheld PC Pro 3.0
      • Handheld PC 2000
      • パームサイズ PC 1.2
      • Pocket PC
      コンポーネントは、Handheld PC 2.0 以来変更されていない既存コンポーネントの上位に位置します。
    2. 将来の拡張性。インターフェイスは、将来の拡張が可能な設計になっています。たとえば、Folder というオブジェクトがありますが、このオブジェクトは、このバージョンではデータベースのラッパーにすぎません。
    3. Outlook の互換性。デスクトップ版 Outlook Object Model をベースにする一方で、デバイス上での単純化を図るための相違点が若干存在します。たとえば、NameSpace オブジェクトは提供されません。これは、Outlook が MAPI セッションにログオンするために使用するもので、Windows CE デバイス上では余分なレイヤです。Pocket Outlook Object Model は、Outlook Object Model のサブセットというよりは、Outlook Object Model がベースであるという方がより正確です。
    4. オートメーション オブジェクト。オートメーション オブジェクトには 2 つのインターフェイスがあり、これを使用して、Microsoft Visual Basic やスクリプティングのプログラマは Object Model を使用することができます。Microsoft C や Visual C++ では、メソッドやプロパティの名前が Visual Basic での場合より複雑ですが、ユーザーにとっては Object Model が使用されていることの方が重要です。
    5. 簡潔さ。インターフェイスはきわめて簡潔で、デスクトップ版 Outlook Object Model の機能の小規模なサブセットとなっています。
    Pocket Outlook Object Model のメインのインターフェイスは、Pocket Outlook Application オブジェクトです。他のすべてのオブジェクトは、ここから派生したものです。Application オブジェクトにログオンすると、各種の Folder オブジェクトにアクセスすることができます。

    Folder オブジェクトには、アイテムの集合が含まれています。このフォルダ実装は、Outlook の Folder オブジェクトのサブセットです。Folder オブジェクトは、連絡先、時計、予定表、仕事の各データベースのラッパーです。アイテムのそれぞれの種類に対してフォルダが 1 つだけ存在します。Folder オブジェクト自体は作成することも、ラッパー以外のものとして操作することもできません。Folder オブジェクトは、主に Outlook との互換性のために提供されています。"赤外線受信" フォルダも提供されます。これは、赤外線ポート上でアイテムを送信する際に使用することができます。

    Folder オブジェクトからは Items コレクションを取得できます。これは、連絡先、仕事、予定、または都市の集合です。Items コレクションからは、個々のアイテムを取得または作成することができます。また、Items コレクションを使用して、オブジェクトの集合に対して基本的なフィルタリングを行うこともできます。

    個々のアイテムについて、個別にプロパティを設定および取得することができ、ストアでアイテムの作成、変更、削除を行うことができます。ただし、都市は読み取り専用のアイテムであるため、作成も変更もできません。

    仕事と予定のアイテムでは、仕事や予定の繰り返しの設定を可能にする RecurrencePattern オブジェクトがサポートされます。予定では、Recipients コレクションもサポートされており、会議の受信者を指定することができます。予定に受信者のコレクションが含まれていれば、会議出席依頼となります。

    次の表は、基本的な Pocket Outlook Object Model を表したものです。
    元に戻す全体を表示する
    Application オブジェクト
    Folder オブジェクト
    予定表
    都市
    連絡先
    赤外線
    仕事
  6. POOM SDK でプログラミングを始める方法

    マイクロソフトは、この情報をプログラミング言語の使用方法の一例として提供するだけであり、市場性および特定目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。この資料は、例示されているプログラミング言語やプロシージャの作成およびデバッグに使用するツールについて理解されているユーザーを対象としています。Microsoft Support 担当者は、特定のプロシージャの機能についての問い合わせにはお答えできますが、ユーザー固有の目的に合わせた機能の追加、プロシージャの作成などの内容変更は行っておりません。

    POOM を使用してプログラミングを始める前に、IntelliSense ヘルプを使用するため、DLL への参照を設定してください。これを行うには、[プロジェクト] メニューの [参照設定] をクリックして、POOM に付属する pimstore_i486.dll ファイルを参照します。
    • ログオンとログオフの方法

      Logon メソッドと Logoff メソッドはそれぞれ、Pocket Outlook の Application オブジェクトに対して呼び出される最初と最後のメソッドです。ユーザーは、Logon によって Pocket Outlook セッションにログオンし、Logoff によってログアウトします。

      これらのメソッドは、次のように呼び出されます。
      Option Explicit
      Dim pOLA As PocketOutlook.Application
      
      Private Sub Form_Load()
      
          Set pOLA = CreateObject("PocketOutlook.Application")
          
          'Since you are going to be displaying items, you pass in the
          'form’s HWND to Logon so that dialog boxes will be parented to
          'this window. Otherwise, the user could display
          'multiple items at a time.
          pOLA.Logon (Form1.hWnd) 'logs on to a session
      End Sub
      
      Private Sub Form_Unload(Cancel As Integer)
          pOLA.Logoff    'logs off of a session
      End Sub
      						
    • 新しい連絡先の作成方法
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pContact As PocketOutlook.ContactItem
        Const olCreateContact = 2
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
            AddNewContact "Maxwell", "Smart"
        End Sub
        
        Function AddNewContact(sFirstName As String, sLastName As String) As Long
            Set pContact = pOLA.CreateItem(olCreateContact)
            pContact.FirstName = sFirstName
            pContact.LastName = sLastName
            pContact.Save
            Set pContact = Nothing
        End Function
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 連絡先に関する情報を表示する方法

      : このサンプルは、特定の連絡先が存在することを前提としています。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pContact As PocketOutlook.ContactItem
        Const olFolderContacts = 10
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            DisplayContact "Smart, Maxwell"
        End Sub
        
        Sub DisplayContact(inpContactName As String)
            Set pContact = pOLA.GetDefaultFolder(olFolderContacts).Items.Find( _
                "[FileAs] = """ & inpContactName & """")
            Set pContact = pOLA.GetItemFromOid(pContact.oid)
            pContact.Display
            Set pContact = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 連絡先の一覧を取得する方法
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. Form1 にリスト ボックス (ListBox) コントロールを追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pContact As PocketOutlook.ContactItem
        Dim pItems As PocketOutlook.Items
        Const olFolderContacts = 10
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
            
            GetContacts List1
        End Sub
        
        Private Sub GetContacts(lstCtrl As ListBox)
            Dim i As Integer
            lstCtrl.Clear
            'Add all the Contacts to a ListBox. Start by getting the
            'Contacts folder, and then get its Item Collection.
            Set pItems = pOLA.GetDefaultFolder(olFolderContacts).Items
            
            For i = 1 To pItems.Count
                Set pContact = pItems.Item(i)
                lstCtrl.AddItem i & ": " & pContact.FileAs
            Next i
            Set pItems = Nothing
            Set pContact = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 予定の作成方法
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pApptItem As PocketOutlook.AppointmentItem
        Const olCreateAppointment = 1
        
        Private Sub Command1_Click()
           NewAppt "Meet with Chief", "Cone of Silence Room", _
                    "Discuss shoe phone repair bills", _
                    CDate("12/15/00 08:30:00 AM"), _
                    CDate("12/15/00 10:30:00 AM")
        End Sub
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub NewAppt(sSubject As String, sLoc As String, _
                sBody As String, dStart As Date, dEnd As Date)
                
            Set pApptItem = pOLA.CreateItem(olCreateAppointment)
            pApptItem.Subject = sSubject
            pApptItem.Location = sLoc
            pApptItem.Body = sBody
            pApptItem.Start = dStart
            pApptItem.End = dEnd
            pApptItem.Save
            Set pApptItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 予定の情報を取得する方法

      : このサンプルは、今日の予定が存在することを前提としています。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. Form1 にコマンド ボタン (CommandButton) コントロールとリスト ボックス (ListBox) コントロールを追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pApptItem As PocketOutlook.AppointmentItem
        Dim pItems As PocketOutlook.Items
        Const olFolderCalendar = 9
        
        Private Sub Command1_Click()
            ViewTodaysAppointments Date, List1
        End Sub
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Sub ViewTodaysAppointments(inpDate As Date, lstCtrl As ListBox)
            Dim iItem As Integer
            lstCtrl.Clear
            Set pItems = pOLA.GetDefaultFolder(olFolderCalendar).Items
            'Use the Restrict method to find only those items with a start
            'date of today. pTodaysItems will be a new Item Collection that
            'contains only those items that pass the restriction of
            'occurring today.
            Set pItems = pItems.Restrict("[Start] = """ & inpDate & """")
            For iItem = 1 To pItems.Count
                Set pApptItem = pItems.Item(iItem)
                lstCtrl.AddItem pApptItem.Subject & " at " & _
                    FormatDateTime(pApptItem.Start, vbShortTime)
            Next
            Set pItems = Nothing
            Set pApptItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 仕事の作成方法
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pTaskItem As PocketOutlook.TaskItem
        Const olCreateTasks = 3
        Const olDialog = 1
        Const olSound = 8
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            NewTask "Pick up shoe phone at repair shop", "Watch out for KAOS", _
                Now() + 2, Now(), "Alarm3", True
        End Sub
        
        Sub NewTask(sSubject As String, sBody As String, _
                dDue As Date, dStart As Date, _
                sSoundFile As String, bReminderSet As Boolean)
                
            Set pTaskItem = pOLA.CreateItem(olCreateTasks)
            pTaskItem.Subject = sSubject
            pTaskItem.Body = sBody
            pTaskItem.DueDate = dDue
            pTaskItem.StartDate = dStart
            pTaskItem.ReminderSet = bReminderSet
            If bReminderSet Then
                pTaskItem.ReminderOptions = olSound Or olDialog
                pTaskItem.ReminderSoundFile = sSoundFile
                pTaskItem.ReminderTime = dDue - 1
            End If
            pTaskItem.Save
            Set pTaskItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.logoff
            Set pOLA = Nothing
        End Sub
        							
    • 仕事の情報を取得する方法
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. Form1 にコマンド ボタン (CommandButton) コントロールを 2 つとリスト ボックス (ListBox) コントロールを 1 つ追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pTaskItem As PocketOutlook.TaskItem
        Dim pItems As PocketOutlook.Items
        Const olFolderTasks = 13
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
            Command1.Caption = "View Today's Tasks"
            Command2.Caption = "View All Tasks"
        End Sub
        
        Private Sub Command1_Click()
            ViewTodaysTasks Date + 1, List1
        End Sub
        
        Private Sub Command2_Click()
            ViewAllTasks List1
        End Sub
        
        Sub ViewTodaysTasks(inpDate As Date, lstCtrl As ListBox)
            Dim iItem As Integer
            lstCtrl.Clear
            Set pItems = pOLA.GetDefaultFolder(olFolderTasks).Items
            'Use the Restrict method to find only those items with a due
            'date of today.
            Set pItems = pItems.Restrict("[Duedate] = """ & inpDate & """")
            For iItem = 1 To pItems.Count
                Set pTaskItem = pItems.Item(iItem)
                lstCtrl.AddItem pTaskItem.Subject
            Next
            Set pItems = Nothing
            Set pTaskItem = Nothing
        End Sub
        
        Sub ViewAllTasks(lstCtrl As ListBox)
            Dim iItem As Integer
            lstCtrl.Clear
            Set pItems = pOLA.GetDefaultFolder(olFolderTasks).Items
            For iItem = 1 To pItems.Count
                Set pTaskItem = pItems.Item(iItem)
                lstCtrl.AddItem pTaskItem.Subject & " on " & _
                    FormatDateTime(pTaskItem.DueDate, vbShortDate)
            Next
            Set pItems = Nothing
            Set pTaskItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
    • 都市を追加する方法

      都市は、コントロール パネルの世界時計にあり、ユーザーにより定義されたもの、または ROM 内にあるものです。ROM 内にある場合は、都市を変更できません。

      : Pocket PC ベースのデバイスでは、都市の情報は時計アプレットの [設定] メニュー オプションにあります。

      City オブジェクトの Longitude や Latitude のプロパティは、以下の基準を使用して設定します。
      • 西経は負の値、東経は正の値です。たとえば、西経 104.98 度は -10498 となります。
      • 南緯は負の値、北緯は正の値です。たとえば、北緯 39.77 度は 3977 となります。
      : 次のコードを実行する前に、コントロール パネルの世界時計 (Pocket PC ベースのデバイスでは時計) を終了してください。終了しないと、エラーが発生します。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pCityItem As PocketOutlook.CityItem
        Dim pItems As PocketOutlook.Items
        Const olFolderCities = 101
        Const olCreateCity = 102
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            AddNewCity "Steilacoom, WA", "USA"
        End Sub
        
        Private Sub AddNewCity(sCityName As String, _
                               sCountryName As String)
            'Check to see if city exists first because
            'we won't get an error if it's created twice.
            If CityExists(sCityName) = True Then
                MsgBox "City already exists"
                Exit Sub
            End If
            
            Set pCityItem = pOLA.CreateItem(olCreateCity)
            pCityItem.Name = sCityName
            pCityItem.Country = sCountryName
            pCityItem.Save
            Set pCityItem = Nothing
        End Sub
        
        Private Function CityExists(sCityName As String) As Boolean
            Set pItems = pOLA.GetDefaultFolder(olFolderCities).Items
            Set pCityItem = pItems.Find("[NAME] = """ & sCityName & """")
        
            If pCityItem Is Nothing Then
                CityExists = False
            Else
                CityExists = True
            End If
            
            Set pCityItem = Nothing
        End Function
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
    • 都市とタイムゾーンの情報を取得する方法

      : 次のコードを実行する前に、コントロール パネルの世界時計 (Pocket PC ベースのデバイスでは時計) を終了してください。終了しないと、エラーが発生します。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Const olFolderCities = 101
        Dim pOLA As PocketOutlook.Application
        Dim pCity As PocketOutlook.CityItem
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            FindCityTimeZone "Sioux Falls, SD"
        End Sub
        
        Private Sub FindCityTimeZone(inpCity As String)
            Dim sTimeZone As String
            Set pCity = pOLA.GetDefaultFolder(olFolderCities).Items.Find( _
                "[NAME] = """ & inpCity & """")
            sTimeZone = pOLA.GetTimeZoneFromIndex( _
                pCity.TimezoneIndex).StandardName
            MsgBox pCity.Name & " is in the '" & sTimeZone & "' time zone."
            Set pCity = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
    • 自宅と訪問先を指定する方法

      : 次のコードを実行する前に、コントロール パネルの世界時計 (Pocket PC ベースのデバイスでは時計) を終了してください。終了しないと、エラーが発生します。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. 2 つのコマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Const olFolderCities = 101
        Const olHomeCity = 0
        Const olVisitingCity = 1
        Dim pOLA As PocketOutlook.Application
        Dim pCity As PocketOutlook.CityItem
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
            Command1.Caption = "Visiting"
            Command2.Caption = "Home"
        End Sub
        
        Private Sub Command1_Click()
            CitySetVisit "Vancouver, BC"
        End Sub
        
        Private Sub Command2_Click()
            CitySetHome "Seattle, WA"
        End Sub
        
        Private Sub CitySetVisit(inpCity As String)
            Set pCity = pOLA.GetDefaultFolder(olFolderCities).Items.Find( _
                "[NAME] = """ & inpCity & """")
            pOLA.VisitingCity = pCity
            pOLA.CurrentCityIndex = olVisitingCity
            MsgBox "Visiting city is now: " & pOLA.VisitingCity.Name
            Set pCity = Nothing
        End Sub
        
        Private Sub CitySetHome(inpCity As String)
            Set pCity = pOLA.GetDefaultFolder(olFolderCities).Items.Find( _
                "[NAME] = """ & inpCity & """")
            pOLA.HomeCity = pCity
            pOLA.CurrentCityIndex = olHomeCity
            MsgBox "Home city is now: " & pOLA.HomeCity.Name
            Set pCity = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
    • 赤外線転送を使用してアイテムを送信する方法

      このサンプルでは、新しく作成した TaskItem を赤外線転送を通じて送信します。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pFolder As PocketOutlook.Folder
        Dim pTaskItem As PocketOutlook.TaskItem
        Const olTaskItem = 3
        Const olFolderInfrared = 102
        Const olCreateTasks = 3
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            'Set up a task
            Set pTaskItem = pOLA.CreateItem(olCreateTasks)
            pTaskItem.Subject = "Pick up shoe phone at repair shop"
            pTaskItem.StartDate = Now   'today
            pTaskItem.DueDate = Now + 1 'tomorrow
            pTaskItem.Save
        
            'Ship it over
            Set pFolder = pOLA.GetDefaultFolder(olFolderInfrared)
            pFolder.AddItemToInfraredFolder olTaskItem, pTaskItem
            pFolder.SendToInfrared
            
            Set pFolder = Nothing
            Set pTaskItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
    • 赤外線転送を使用してアイテムを受信する方法

      このサンプルでは、赤外線転送を通じて送信された TaskItem を取り出します。
      1. eMbedded Visual Basic で新しい Windows CE プロジェクトを作成します。デフォルトで Form1 が作成されます。
      2. コマンド ボタン (CommandButton) コントロールを Form1 に追加します。
      3. Form1 に次のコードを貼り付けます。
        Option Explicit
        Dim pOLA As PocketOutlook.Application
        Dim pFolder As PocketOutlook.Folder
        Dim pItems As PocketOutlook.Items
        Dim pTaskItem As PocketOutlook.TaskItem
        Const olFolderTasks = 13
        
        Private Sub Form_Load()
            Set pOLA = CreateObject("PocketOutlook.Application")
            pOLA.Logon (Form1.hWnd)
        End Sub
        
        Private Sub Command1_Click()
            'Get the task from Infrared transfer
            Set pFolder = pOLA.GetDefaultFolder(olFolderTasks)
            Set pItems = pFolder.ReceiveFromInfrared
            
            'Verify we got it
            Set pTaskItem = pItems.Item(1)
            MsgBox pTaskItem.Subject, vbCritical, "Task Received!"
            
            Set pFolder = Nothing
            Set pItems = Nothing
            Set pTaskItem = Nothing
        End Sub
        
        Private Sub Form_Unload(Cancel As Integer)
            pOLA.Logoff
            Set pOLA = Nothing
        End Sub
        							
この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。明示または黙示にかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

関連情報

詳細については、POOM SDK に含まれる「Pocket Outlook Object Model.doc」を参照してください。この SDK は次のマイクロソフト Web サイトからダウンロードできます。
http://www.microsoft.com/downloads/details.aspx?FamilyID=78d1a8b7-d606-45b2-9cdc-58bf5a578338&displaylang=en (http://www.microsoft.com/downloads/details.aspx?FamilyID=78d1a8b7-d606-45b2-9cdc-58bf5a578338&displaylang=en)
関連情報については、次のマイクロソフト Web サイトの「Using the Pocket Outlook Object Model SDK」を参照してください。
http://msdn.microsoft.com/library/en-us/wceappservices5/html/wce50oripocketoutlookobjectmodelpoomapi.asp (http://msdn.microsoft.com/library/en-us/wceappservices5/html/wce50oripocketoutlookobjectmodelpoomapi.asp)

この資料は以下の製品について記述したものです。
  • Microsoft eMbedded Visual Basic 3.0
  • Microsoft Windows CE Toolkit for Visual Basic 6.0
キーワード:?
kbgrpdsvb kbhowto kboswincesearch kboutlook kbvbm300 kbvbp600 KB265771
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"
 

サポート技術情報の翻訳