Palm Programmer's Laboratory

トップ 差分 一覧 ソース 検索 ヘルプ RSS ログイン

C/C++ Sync Suite Reference601/5-2

← 4 章に戻る ↑トップへ 6 章に進む →

5 共通同期マネージャ API (ページ 2)

← 5 章のページ 1 へ ↑ 5 章のトップへ

共通同期マネージャ関数とマクロ ^TOP^

この節では、複数のタイプ (スキーマ、拡張、クラシック) のデータベースに対して機能するあるいはデータベースに対してまったく機能しない以下の関数とマクロについて説明します。

関数 説明
SyncAddLogEntry() ハンドヘルド上の HotSync ログにエントリを追加します。
SyncBackupDatabase() ハンドヘルド データベースをデスクトップ上のディレクトリまたはファイルにバックアップします。
SyncBackupSecurityData() ハンドヘルドからデスクトップ上のディレクトリにセキュリティ ボールト データベースをバックアップします。
SyncCallDeviceApplication() Palm OS Cobalt ハンドヘルド上のアプリケーションを呼び出し、そのアプリケーションからあなたのコンジットへとデータとステータス情報を返します。
SyncGenerateBackupFileName() 名前、クリエイタ、タイプ、属性によって指定されたデータベースの固有バックアップ ファイル名を生成します。
SyncGetAPIVersion() デスクトップ コンピュータ上にインストールされている同期マネージャ API のバージョンを取得します。
SyncGetDesktopTrustStatus() 進行中の HotSync が信用されるデスクトップとのものであるかを決定します。
SyncGetHHOSVersion() ハンドヘルド上のオペレーティング システムのバージョン番号を取得します。
SyncHHToHostDWord() ハンドヘルドからの 32 ビットの UInt36 値のデスクトップ コンピュータ表記を返します。
SyncHHToHostWord() ハンドヘルドからの 16 ビットの UInt16 値のデスクトップ コンピュータ表記を返します。
SyncHostToHHDWord() デスクトップ コンピュータからの 32 ビットの UInt32 値のハンドヘルド表記を返します。
SyncHostToHHWord() デスクトップ コンピュータからの 16 ビットの UInt16 値のハンドヘルド表記を返します。
SyncInstallAndBackupDatabase() デスクトップ上のイメージ ファイルからハンドヘルドにデータベースをインストールし、同じデータベースをバックアップします。
SyncInstallDatabase() デスクトップ上のイメージ ファイルからハンドヘルドにデータベースをインストールします。
SyncIsDatabaseBackupNeeded() ハンドヘルド上のデータベースのためのデスクトップ バックアップ ファイルが期限切れかどうかを決定します。
SyncLoopBackTest() (Private) デバイスとの通信をテストします。
SyncReadBackupImageInfo() デスクトップ上のバックアップ イメージ ファイルからデータベース ヘッダ情報を読み込みます。
SyncReadFeature() ハンドヘルド上の Feature マネージャから 32 ビットの Feature 値を取得します。
SyncReadSingleCardInfo() ハンドヘルド上のメモリ カードについての情報を取得します。
SyncReadSysDateTime() ハンドヘルド上のシステム クロックに対応する現在の日付と時刻を取得します。
SyncReadSystemInfo() ハンドヘルドの Palm OS ソフトウェア バージョンとプロダクト情報を取得します。
SyncReadUserID() ハンドヘルド上のユーザについての情報 - ユーザ名、最後の同期日付、暗号化されたパスワードを含む - を取得します。
SyncRebootSystem() HotSync の最後にハンドヘルドをソフト リセットするようリクエストを送ります。
SyncRegisterConduit() 同期を開始しようとしているコンジットを登録して、他の同期マネージャ関数で使用するためのハンドルを返します。
SyncRestoreSecurityData() デスクトップからハンドヘルドへセキュリティ ボールト データベースをリストアします。
SyncROMVMAJOR() ハンドヘルド上の Palm OS のメジャー バージョン番号をデコードします。
SyncROMVMINOR() ハンドヘルド上の Palm OS のマイナー バージョン番号をデコードします。
SyncUnRegisterConduit() 前回の SyncRegisterConduit() 呼び出しで登録に成功したコンジットの登録を解除して、同期マネージャがそのコンジットのために割り当てたシステム リソースをすべてクリーン アップします。
SyncWriteSysDateTime() ハンドヘルドのシステム日付と時刻をセットします。
SyncYieldCycles() HotSync マネージャに HotSync の進捗表示インジケータを更新させます。

SyncAddLogEntry 関数 ^TOP^

目的

ハンドヘルド上の HotSync ログにエントリを追加します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncAddLogEntry (
   const char *pText
)

パラメータ

  • → pText

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_LIMIT_EXCEEDED

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

ハンドヘルド上の HotSync ログは容量を制限されているため、可能な限りエントリを短くしてください。

あなたのログ エントリに改行を入れるには、シングル改行文字 (文字コード 0x0A) を使用してください。

HotSync マネージャはあなたのコンジットの一般的な成功または失敗ステータスをログに残すということに注意してください; それゆえ、あなたはこの目的のためにエントリを追加する必要はありません。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

LogAddEntry()

SyncBackupDatabase 関数 ^TOP^

目的

ハンドヘルド データベースをデスクトップ上のディレクトリまたはファイルにバックアップします。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncBackupDatabase (
   DBDatabaseInfo &dbInfo,
   TCHAR *filePath,
   HSBool bAlwaysBackup
)

パラメータ

  • ←→ dbInfo
    • バックアップするデータベースの name の値を指定する DBDatabaseInfo 構造体への参照。type はクロス チェックとしてのみ使用され、あなたがその値を気にしない場合は 0 にセットされるかもしれません。attributes はデータベースがクラシック、拡張、スキーマ データベースのどれであるかを指定しなければなりません。他のすべての attributes ビットは無視されます。成功した場合の返り時には、ハンドヘルド上の一致するデータベース (が存在する場合は) の DBDatabaseInfo 構造体のセクション 1 の中にあるすべてのフィールドの値を受け取ります。filePath がディレクトリである場合、この関数はバックアップ ファイル名を生成するために typeattributes を使用するということに注意してください。
  • ←→ filePath
    • バックアップ ファイルの保存先パスまたはファイル名である null で終了する TCHAR 配列。呼び出し元がディレクトリ パスを指定した場合、同期マネージャは自動的にファイル名を生成し、それを指定されたディレクトリ パスに付加し、返り時に戻します; この場合、filePath はパス全体 (ディレクトリ + ファイル名) を保持するのに十分なほど大きくなければなりません。NULL を渡してはいけません。
  • → bAlwaysBackup
    • TRUE である場合、常にデータベースをバックアップします。FALSE である場合、必要に応じてデータベースをバックアップします; 同期マネージャがデータベースをバックアップする必要があるかどうかをどのように決定するかについての説明は、SyncIsDatabaseBackupNeeded() を参照してください。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
    • 指定されたデータベースへのアクセスはハンドヘルド認証マネージャによって拒否されました - 例えば、データベースはセキュア データベースであり、デスクトップは信認されていないためです。
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_DISK_FULL
    • filePath で指定されたディスク ドライブには十分な空き容量がありません。
  • SYNCERR_FILE_ALREADY_OPEN
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
    • この関数はデスクトップ メモリを割り当てることができませんでした。
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_NOT_FOUND
    • 指定されたデータベースはハンドヘルド上に存在しません。
  • SYNCERR_OPERATION_ABORTED
  • SYNCERR_PATH_NOT_FOUND
    • filePath もその親ディレクトリも存在しません。
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
    • デスクトップ上で利用可能なファイル ハンドルは不十分な状態です。 (訳者注: コンジットはクラシック データベースを一度に一つしかオープンさせておくことができないため、複数のクラシック データベースをオープンしようとするとこのエラーが起こります。)
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドが実行している Palm OS のバージョンはこの関数をサポートしません。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

あなたが指定したハンドヘルド データベースに基づき、この関数はそのデータベースのイメージ ファイルをデスクトップ上に作成あるいは更新します。この関数はコンジットが一回の関数呼び出しでデータベース全体をデスクトップへ転送することを可能にします。

呼び出し元は名前、クリエイタ ID、タイプ、属性によってデータベースを指定します (クラシック、拡張、スキーマ データベースのいずれでも)。この関数は Palm OS Cobalt を実行しているハンドヘルドに対してのみ機能します。

filePath がディレクトリである場合、この関数はデータベースのクリエイタ、タイプ、名前、属性から自動的にバックアップ ファイル名を生成します。そのため、あなたはこの関数呼び出しに先立って SyncGenerateBackupFileName() を呼び出す必要はありません。

この関数は以下の条件がすべて満たされる場合にのみデータベースをバックアップします:

  • ファイルまたはパス (filePath) が書き込み可能であること。
  • データベースがセキュア データベースである場合、デスクトップは信任されていなければなりません。
  • 以下のどちらかが真であること:
    • この関数呼び出しに対応する SyncIsDatabaseBackupNeeded()TRUE を返すこと。この関数はバックアップ日付、バックアップ ビット、データベースとファイルが存在するかどうか、データベースとファイルの名前、クリエイタ ID、タイプが一致するかどうかをテストします。
    • bAlwaysBackup パラメータが TRUE であること。
NOTE
データベースのバックアップ ビットがセットされていない場合、あなたが bAlwaysBackupTRUE にセットしない限りこの関数はバックアップを行いません。しかし、そうした場合、この関数はデスクトップ上の指定されたイメージ ファイルが最新のものであってもデータベースをバックアップします。

互換性

  • 同期マネージャ バージョン: 2.5 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

SyncIsDatabaseBackupNeeded(), SyncGenerateBackupFileName(), SyncBackupSecurityData(), SyncInstallDatabase()

SyncBackupSecurityData 関数 ^TOP^

目的

ハンドヘルドからセキュリティ ボールト データベースをデスクトップ上のディレクトリにバックアップします。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncBackupSecurityData (
   TCHAR *filePath
)

パラメータ

  • → filePath
    • ボールト ファイルのバックアップ先となるディレクトリ。null で終了する TCHAR 配列です。同期マネージャはファイル名を自動的に生成します。NULL を渡してはいけません。

返り値

成功した場合、SYCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
    • アクセスはハンドヘルド上の認証マネージャによって拒否されました - 例えば、新任されていないデスクトップからセキュア データベースにアクセスすることはできないためです。
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_DISK_FULL
  • SYNCERR_FILE_ALREADY_OPEN
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
    • この関数はデスクトップ メモリを割り当ていることができませんでした。
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_NOT_FOUND
  • SYNCERR_OPERATION_ABORTED
  • SYNCERR_PATH_NOT_FOUND
    • filePath によって指されているディレクトリは存在しません。
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドが実行している Palm OS のバージョンはこの関数をサポートしません。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

ハンドヘルド上の認証マネージャはセキュア データベースをサポートするためにすべての関連情報 - HEK、ルール、トークンなど - を ボールト と呼ばれる 1 つまたは複数の特別なセキュア データベースに保存します。バックアップ コンジットは各 HotSync セッションの最後に他のすべてのデータベースの後にボールとをバックアップしなければなりません。この関数は認証マネージャによって要求された順番でボールトがバックアップされることを保証します。

ハンドヘルドがリセットされた後、ボールトは他のすべてのデータベースの前にハンドヘルドにリストアされなければなりません。それにより、認証マネージャはボールトの後に他のセキュア データベースがリストアされることを許可します。SyncRestoreSecurityData() を参照してください。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

SyncRestoreSecurityData()

SyncCallDeviceApplication 関数 ^TOP^

目的

Palm OS Cobalt ハンドヘルド上のアプリケーションを呼び出し、そのアプリケーションからあなたのコンジットへデータとステータス情報を返します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncCallDeviceApplication (
   CCallApplicationParams *pParams
)

パラメータ

  • ←→ pParams
    • 呼び出すアプリケーションの情報を指定し、呼び出されたアプリケーションから情報を受け取りための CCallApplicationParams クラスのオブジェクト。入力時には、あなたはアプリケーションのクリエイタ ID、データベース名、データベース属性 (クラシック、拡張、スキーマ)、さらにアプリケーションに渡すアクション コードとパラメータ、アプリケーションから返り値を受け取るために使用されるバッファとそのバッファのサイズを指定しなければなりません。返り時には、このオブジェクトは結果のコードと結果のサイズを受け取ります。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 を返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_MEM
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルド上でアプリケーションが見つからなかった、アプリケーションはアクション コードを扱えなかった、またはハンドヘルドはこの関数をサポートしない Palm OS のバージョンを実行しています (以下の「互換性」を参照してください)。
  • SYNCERR_LOCAL_BUFF_TOO_SMALL
    • 結果を受け取るバッファが結果データを受け取るのに十分な大きさがありませんでした。この場合、返り時の m_dwActResultSizem_dwResultBufSize よりも大きくなり、m_dwResultBufSize バイトだけが結果のバッファにコピーされています。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数は Palm OS バージョン 6.0.1 以降を実行しているハンドヘルドに対してのみ機能します。これらのハンドヘルドに対しては、SyncCallRemoteModule() ではなくこの関数を使用します。SyncCallDeviceApplication() はあなたがクリエイタ ID、データベース名、データベース属性 (クラシック、拡張、スキーマ) によってターゲット アプリケーションを一意に指定することを可能にします。

たいていのコンジットはそのジョブをこの関数を使わずに達成することができます。PalmSource は絶対に必要でない限りこの関数を使用しないことを推奨します。この関数の使用が不可避となる例は、あなたがセキュア データベースを作成するためにあなたのアプリケーションを呼び出す必要がある場合です。詳細は、Introduction to Conduit Development「セキュア データベースの作成」 を参照してください。

この関数は呼び出し元が HotSync の最中に pParams の中の任意のデータをハンドヘルド上のアプリケーションに送ることを可能にします。アプリケーションは可変サイズの情報を pParams に戻すことができ、呼び出し元はこの関数の返り時にその情報を検証することができます。

データとアクション コードのフォーマットは完全にアプリケーション特有であることに注意してください。あなたが呼び出すハンドヘルド アプリケーションは Palm OS アプリケーションと同じ構造を持っていなければなりません; しかしながら、そのアプリケーションは独自のタイプ ID を持つことができ、それによりそのアプリケーションはランチャに表示されなくなります。

Palm OS Protein アプリケーション がターゲットである場合、あなたはそのアプリケーションが拡張データベースかスキーマ データベースのどちらかの中に存在するかもしれないということを示すために pParams->m_wAttributes(dmHdrAttrSchema|dmHdrAttrExtended) にセットすることができます。68K アプリケーション がターゲットである場合、pParams->m_wAttributes を 0 にセットします。

pParams->m_dwTypeID が 0 である場合、SyncCallRemoteModule() はタイプ sysFileTApplication で呼び出された DmFindDatabaseByTypeCreator(dmFindClassicDB) によって返される最初のアプリケーションを起動します; さもなければ、そのようなアプリケーションが存在しない場合、タイプ sysFileTPanel を持つ DmFindDatabaseByTypeCreator(dmFindClassicDB) によって返される最初のアプリケーションを起動します; さもなければエラーを返します。そのため SyncCallRemoteModule() は実際は 0 のセッティング m_dwTypeIDsysFileTApplication のタイプ ID を持つ最初の呼び出しに対するサブタイトルとして扱い、それからsysFileTPanel のタイプ ID として扱います。

訳者: DmFindDatabaseByTypeCreator() という関数は Palm OS Development Kit にも Conduit Development Kit にも無いが、どこにある関数を指しているのか?SyncDmFindDatabaseByTypeCreator()|C/C++ Sync Suite Reference601/3 のことを指しているのか?

あなたがコンジットから SyncCallDeviceApplication() を呼び出した場合、ハンドヘルド上のアプリケーションは sysAppLaunchCmdHandleSyncCallApp 起動コードで起動します。この起動コードをハンドルするには、ハンドヘルド アプリケーションは PilotMain() 渡されたコマンド パラメータ ブロックを SysAppLaunchCmdHandleSyncCallAppType ポインタにキャストしなければなりません。SysAppLaunchCmdHandleSyncCallAppType 構造体は呼び出し元がデスクトップ上の SyncCallDeviceApplication() に渡したすべての情報を保持します - これはデスクトップに結果として戻す必要があるフィールドと同様のものです。

ハンドヘルド アプリケーションは sysAppLaunchCmdHandleSyncCallApp 起動コードを処理した後、そのハンドヘルド アプリケーションは DLServer (DLServer.h) の DlkControl() 関数を使って DlkCallAppReplyParamType 応答を送らなければなりません。

表 5.1表 5.2 はデスクトップ上の同期マネージャの CCallApplicationParams クラスからハンドヘルド上の SysAppLaunchCmdHandleSyncCallAppType 構造体と DlkCallAppReplyParamType 構造体へのいくつかの重要なマッピングを掲載しています。


表 5.1 デスクトップ同期マネージャ CCallApplicationParams からハンドヘルド SysAppLaunchCmdHandleSyncCallAppType へのマッピング

CCallApplicationParams SysAppLaunchCmdHandleSyncCallAppType 構造体
m_wActionCode action
m_dwParamSize dwParamSize
m_pParam paramP


表 5.2 デスクトップ同期マネージャ CCallApplicationParams からハンドヘルド DlkCallAppReplyParamType へのマッピング

CCallApplicationParams
m_dwResultBufSize dwResultSize
m_pResultBuf resultP
m_dwResultCode dwResultCode

ハンドヘルド アプリケーション コードについての更なる情報と例は、Exploring Palm OS: System Management を参照してください。

互換性

  • 同期マネージャ バージョン: 2.5 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0.1 以降

参照

CCallApplicationParams

SyncGenerateBackupFileName 関数 ^TOP^

目的

名前、クリエイタ、タイプ、属性で指定されたデータベースの固有バックアップ ファイル名を生成します。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncGenerateBackupFileName (
   DBDatabaseInfo &info,
   TCHAR *fileName
)

パラメータ

  • → info
    • DBDatabaseInfo 構造体への参照。この構造体の name フィールドがターゲット データベースを指定します。データベースはハンドヘルド上に存在している必要はないということに注意してください。
  • ← fileName
    • サイズが _MAX_FNAME かそれよりも大きなバッファ。NULL を渡してはいけません。生成されたバックアップ ファイル名を受け取ります。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOCAL_BUFF_TOO_SMALL
    • fileName バッファはファイル名を保持するには小さすぎました。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

Palm OS Cobalt よりも以前の Palm OS バージョンは名前だけでデータベースを一意に識別します。それゆえ、6.0 よりも以前のバージョン HotSync マネージャでは、デフォルトの Backup コンジットはデータベース属性に依存した拡張子 (クラシック リソース データベースなら PRC、クラシック レコード データベースなら PDB) を持つデータベース名だけからなるバックアップ ファイル名を作成します。データベース名の大文字/小文字の区別はバックアップ ファイル名では不正確で無視されます。

しかしながら、Palm OS Cobalt はスキーマ データベースと拡張データベースを名前とクリエイタ ID によって一意に識別します。それゆえ、HotSync マネージャ 6.0 以降と一緒に出荷される Backup コンジットはすべてのデータベースに対してそのデータベースの名前とクリエイタ ID の両方に基づいてバックアップ ファイル名を生成します。この関数はそのようなファイル名を生成します。

この関数は標準バックアップ ファイル名を生成します。コンジットはハンドヘルド上にあるデータベースのイメージ ファイルをデスクトップ上に作成するためにこのファイル名を SyncBackupDatabase() に渡すことができます。けれども、あなたは SyncBackupDatabase() の前にこの関数を呼び出す必要はありません。なぜなら、SyncBackupDatabase() はそれ自身でファイル名を生成することができるからです。この関数の他の使用用途はデータベースがすでにバックアップ イメージをデスクトップ上に持っているかどうか - つまり、データベースがバックアップされているかどうか - を決定することです。
この関数は 表 5.3 で示すようにデータベースの属性とタイプに基づく拡張子を持つファイル名を生成します。


表 5.3 バックアップ ファイル名の拡張子

拡張子 データベースの説明
PRC クラシック リソース データベース
PDB クラシックまたは拡張レコード データベース
SDB スキーマ データベース (非セキュア)
SSD セキュア スキーマ データベース
VLT セキュリティ ボールト データベース

同期マネージャは大文字/小文字の区別がある Palm OS データベースの名前と大文字/小文字の区別がない Windows ファイル名との間の衝突を避けるためにネーム マングル スキーマ (原文: name-mangling scheme, 訳者注: 名前衝突を避けるために名前を変換する手法。例えば、あるコンパイラは Mid2lyMainFunc という関数を __ZZ14Mid2lyMainFunciPPc という名前に変換します。) を使用します。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: 適用されません

参照

DBDatabaseInfo, SyncBackupDatabase(), SyncBackupSecurityData(), SyncIsDatabaseBackupNeeded()

SyncGetAPIVersion 関数 ^TOP^

目的

デスクトップ コンピュータにインストールされている同期マネージャ API のバージョンを取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncGetAPIVersion (
   UInt32 *pdwMajor,
   UInt32 *pdwMinor
)

パラメータ

  • ← pdwMajor
    • デスクトップ コンピュータ上の同期マネージャ API のメジャー バージョン番号。この値を無視するには NULL を指定します。
  • ← pdwMinor
    • デスクトップ コンピュータ上の同期マネージャ API のマイナー バージョン番号。この値を無視するには NULL を指定します。

返り値

0 を返します。

コメント

あなたがデスクトップ コンピュータ上で呼び出すことのできる同期マネージャ関数はどれなのかを決定するために API バージョン情報を使用します。同期マネージャ API バージョンと、同期マネージャ バージョンと HotSync マネージャ バージョンの関係についての更なる情報は、Introduction to Conduit Development「サポートされる HotSync マネージャと同期マネージャのバージョン」 を参照してください。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

「同期マネージャ API のバージョン」

SyncGetDesktopTrustStatus 関数 ^TOP^

目的

進行中の HotSync が新任されたデスクトップとのものかどうかを決定します。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncGetDesktopTrustStatus (
   eDesktopTrustStatus *pTrustStatus
)

パラメータ

  • ← pTrustStatus

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コードの 1 つを返します:

  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数を呼び出すのは HotSync の最中だけにしてください。なぜなら、同期マネージャはハンドヘルドからデスクトップの信任状態を取得しなければならないからです。

同期マネージャがハンドヘルドと接続した後で同期マネージャが認証を行う前にこの関数が呼び出された場合、この関数は eDesktopTrustNotVerified を戻します。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

eDesktopTrustStatus

SyncGetHHOSVersion 関数 ^TOP^

目的

ハンドヘルド上のオペレーティング システムのバージョン番号を取得します。

宣言されている場所

SyncCommon.h

Prototype

UInt16 SyncGetHHOSVersion (
   UInt16 *pwRomVMinor
)

パラメータ

  • ← pwRomVMinor
    • オペレーティング システムのマイナー バージョン番号。あなたはこの値を無視するために NULL を渡すことができます。

返り値

成功した場合、ハンドヘルド上のオペレーティング システムのメジャー バージョン番号を返します。

失敗した場合、0 を返します。普通、これは接続が失われていることを意味します。

コメント

多くの同期マネージャ関数には、その同期マネージャが機能できるハンドヘルドの Palm OS のバージョンに下限があります。そのような同期マネージャ関数を使用する前に、あなたはまずハンドヘルドの Palm OS バージョンをチェックするためにこの関数を呼び出すことができます。

代替手段としては、SyncReadSystemInfo() を呼び出し、それから CSystemInfo オブジェクトの m_RomSoftVersion メンバに対して SYNCROMVMAJOR()SYNCROMVMINOR() マクロを使用します。実際上は、これは SyncGetHHOSVersion() があなたのために行うこととまったく同じです。

互換性

  • 同期マネージャ バージョン: 2.1 以降
  • Palm OS バージョン: すべて

参照

SyncReadSystemInfo(), CSystemInfo

SyncHHToHostDWord 関数 ^TOP^

目的

ハンドヘルドからの指定された 32 ビット UInt32 値のデスクトップ コンピュータでの表現を返します。

宣言されている場所

SyncCommon.h

Prototype

UInt32 SyncHHToHostDWord (
   UInt32 dwValue
)

パラメータ

  • → dwValue
    • ハンドヘルドからの UInt32 値。

返り値

UInt32 を変換した値を返します。これはデスクトップ コンピュータでの表現です。

コメント

この関数は必要に応じてバイト入れ替えを実行し、関数の結果として変換された値を返します。この変換はリトル エンディアンのマルチ バイト整数値として保存する Windows のためにクラシック データベースの中にあるマルチ バイト値に対してのみ必要となります。スキーマ データベースと拡張データベースは Windows と同じように同じリトル エンディアン形式でマルチ バイト整数を表現するため、変換は必要ありません。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

SyncHHToHostWord(), SyncHostToHHDWord(), SyncHostToHHWord()

SyncHHToHostWord 関数 ^TOP^

目的

ハンドヘルドからの指定された 16 ビット UInt16 値のデスクトップ コンピュータでの表現を返します。

宣言されている場所

SyncCommon.h

Prototype

UInt16 SyncHHToHostWord (
   UInt16 wValue
)

パラメータ

  • → wValue
    • ハンドヘルドからの UInt16 値。

返り値

変換した DWORD 値を返します。これはデスクトップ コンピュータでの表現です。

コメント

この関数は必要に応じてバイト入れ替えを実行し、関数の結果として変換された値を返します。この変換はリトル エンディアンのマルチ バイト整数値として保存する Windows のためにクラシック データベースの中にあるマルチ バイト値に対してのみ必要となります。スキーマ データベースと拡張データベースは Windows と同じように同じリトル エンディアン形式でマルチ バイト整数を表現するため、変換は必要ありません。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

SyncHHToHostDWord(), SyncHostToHHDWord(), SyncHostToHHWord()

SyncHostToHHDWord 関数 ^TOP^

目的

デスクトップ コンピュータからの指定された 32 ビット UInt32 値のハンドヘルドでの表現を返します。

宣言されている場所

SyncCommon.h

Prototype

UInt32 SyncHostToHHDWord (
   UInt32 dwValue
)

パラメータ

  • → dwValue
    • デスクトップ コンピュータからの UInt32 値。

返り値

この関数は必要に応じてバイト入れ替えを実行し、関数の結果として変換された値を返します。この変換はリトル エンディアンのマルチ バイト整数値として保存する Windows のためにクラシック データベースの中にあるマルチ バイト値に対してのみ必要となります。スキーマ データベースと拡張データベースは Windows と同じように同じリトル エンディアン形式でマルチ バイト整数を表現するため、変換は必要ありません。

互換性

  • 同期マネージャ バージョン: 2.1 以降
  • Palm OS バージョン: すべて

参照

SyncHHToHostDWord(), SyncHHToHostWord(), SyncHostToHHWord()

SyncHostToHHWord 関数 ^TOP^

目的

デスクトップ コンピュータからの指定された 16 ビット UInt16 値のハンドヘルドでの表現を返します。

宣言されている場所

SyncCommon.h

Prototype

UInt16 SyncHostToHHWord (
   UInt16 wValue
)

パラメータ

  • → wValue
    • デスクトップ コンピュータからの UInt16 値。

返り値

この関数は必要に応じてバイト入れ替えを実行し、関数の結果として変換された値を返します。この変換はリトル エンディアンのマルチ バイト整数値として保存する Windows のためにクラシック データベースの中にあるマルチ バイト値に対してのみ必要となります。スキーマ データベースと拡張データベースは Windows と同じように同じリトル エンディアン形式でマルチ バイト整数を表現するため、変換は必要ありません。

互換性

  • 同期マネージャ バージョン: 2.1 以降
  • Palm OS バージョン: すべて

参照

SyncHHToHostDWord(), SyncHHToHostWord(), SyncHostToHHDWord()

SyncInstallAndBackupDatabase 関数 ^TOP^

目的

デスクトップ上のイメージ ファイルからハンドヘルドへデータベースをインストールし、同じデータベースをバックアップします。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncInstallAndBackupDatabase (
   TCHAR *filePath,
   TCHAR *backupPath,
   HSBool *pIsInstalled,
   DBDatabaseInfo *pDbInfo
)

パラメータ

  • → filePath
    • インストールするイメージ ファイルのフル パスとファイル名 (null で終了する TCHAR 配列) へのポインタ。NULL を渡してはいけません。
  • ←→ backupPath
    • バックアップ ファイルのバックアップ先となるパスまたはファイル名 (null で終了する TCHAR 配列)。これがディレクトリである場合、同期マネージャは自動的にファイル名を生成し、それを指定されたパスに付加し、このフル パスとファイル名を使ってデータベースをバックアップします。呼び出し元が NULL を渡した場合、デフォルトのバックアップ パス <CurrentHotSyncUserFolder>\Backup が使用されます。返り時には、このパラメータは実際に使用されるパスとファイル名を受け取ります。
  • ← pIsInstalled
    • データベースのインストールが成功したかどうかを示すブール値へのポインタ。
  • ← pDbInfo
    • データベースについての情報を受け取る DBDatabaseInfo 構造体へのポインタ。このパラメータは Nullable (訳者注: 無効である場合に null になる値) です。この構造体は pIsInstalledtrue であるときにのみ有効です。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
    • 指定されたデータベースへのアクセスはハンドヘルド認証マネージャによって拒否されました - 例えば、データベースはセキュアであり、デスクトップが信任されていないためです。
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_DISK_FULL
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_FILE_OPEN
  • SYNCERR_INVALID_IMAGE
    • 指定されたファイルは Palm OS データベースの有効なイメージではありません。
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_NOT_FOUND
    • 指定されたイメージ ファイルはデスクトップ上に存在しないか、読み込むことができません。
  • SYNCERR_OPERATION_ABORTED
  • SYNCERR_PATH_NOT_FOUND
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
    • ハンドヘルドにはこの操作を完了するための十分なメモリがありません。
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドはこの関数をサポートしない Palm OS バージョンを実行しています。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数は SyncInstallDatabase() と同じ手順で Palm OS データベースをハンドヘルドにインストールし、同じデータベースを SyncBackupDatabase() と同じ手順でバックアップします。しかしながら、この関数は 2 つの関数を別個に実行するよりもはるかに高速です。なぜなら、この関数のバックアップ操作はハンドヘルドからデータベースを転送しないからです; この関数は単にインストール ファイルをバックアップ ディレクトリにコピーします。

この関数はデータベース バックアップ ビットがセットされているか、データベース クリエイタ ID がすべて小文字で構成されてはいない - つまり、クリエイタ ID が PalmSource 社が使用するために予約されているものではない - 場合にもにバックアップを実行します; 後者のケースでは、バックアップ ビットはハンドヘルド データベースとデスクトップ イメージの両方に自動的にセットされます。バックアップが実行されるとき、バックアップ イメージの作成日付、変更日付、バックアップ日付は相当するハンドヘルド値で更新されます。

この関数の返り値は出力パラメータとともに各操作の成功または失敗を示します。この関数が SYNCERR_NONE を返す場合、*pIsInstalledtrue です。この関数が SYNCERR_NONE を返し、(pDbInfo->attribues & dmHdrAttrBackup) が非 0 である場合、データベースのバックアップは成功しています。この関数が他の値を返し、*pIsInstalledtrue である場合、バックアップの最中にエラーが起きています。それ以外の場合、*pIsInstalledfalse であり、この関数はインストールの最中に失敗しています; このことは *pDbInfo は更新されていないことを意味します。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

SyncInstallDatabase(), SyncBackupDatabase(), SyncIsDatabaseBackupNeeded(), SyncGenerateBackupFileName(), SyncBackupSecurityData()

SyncInstallDatabase 関数 ^TOP^

目的

デスクトップ上のイメージ ファイルからハンドヘルドへデータベースをインストールします。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncInstallDatabase (
   TCHAR *filePath,
   DBDatabaseInfo *pDbInfo = 0
)

パラメータ

  • → filePath
    • インストールするイメージ ファイルのフル パスとファイル名 (null で終了する TCHAR 配列) へのポインタ。NULL を渡してはいけません。
  • ← pDbInfo
    • データベースについての情報を受け取る DBDatabaseInfo 構造体へのポインタ。このオプションのパラメータは Nullable (訳者注: 無効である場合に null になる値) です。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
    • 指定されたデータベースへのアクセスはハンドヘルド認証マネージャによって拒否されました - 例えば、データベースはセキュアであり、デスクトップが信任されていないためです。
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_INVALID_IMAGE
    • 指定されたファイルは Palm OS データベースの有効なイメージではありません。
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_NOT_FOUND
    • 指定されたイメージ ファイルはデスクトップ上に存在しないか、読み込むことができません。
  • SYNCERR_OPERATION_ABORTED
  • SYNCERR_PATH_NOT_FOUND
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
    • ハンドヘルドにはこの操作を完了するための十分なメモリがありません。
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドはこの関数をサポートしない Palm OS バージョンを実行しています。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

コンジットはこの関数を使うことで他の同期マネージャとは異なり 1 度の呼び出しでデータベース全体をハンドヘルドに書き込むことができます。コンジットは HotSync マネージャがそのコンジットの OpenConduit() エントリ ポイントを呼び出した後からそのエントリ ポイントが返るまでの間ならいつでもこの関数をよびだすことができます。そうする代わりに (コンジットがこの関数を呼び出してデータベースをインストールする代わりに)、HotSync が開始されるのに先立ってデスクトップ アプリケーションまたはインストーラはインストールするデータベースまたはファイルをキューに追加することで次の HotSync の最中にデフォルトのインストール コンジットにインストールさせることができます; 詳細は 第 15 章 「インストール援助機能 API」 を参照してください。

この関数はデスクトップ上にある何らかの有効な Palm OS データベースのイメージであるファイルを読み込みます。同期マネージャはファイルをある程度検証し、それをデータベースとしてハンドヘルド上のメモリに転送します。同じ名前とクリエイタ ID を持つデータベースがすでにハンドヘルド上の関連する名前空間に存在している場合、この関数はそれを削除し、イメージ ファイルからの新しいデータベースを書き込みます。

データベース クリエイタ ID がすべて小文字で構成されてはいない - つまり、そのクリエイタ ID は PalmSource 社が使用するために予約されているものではない - 場合、この関数は自動的にデータベースのバックアップ ビットをセットします。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

SyncInstallAndBackupDatabase(), SyncGenerateBackupFileName()

SyncIsDatabaseBackupNeeded 関数 ^TOP^

目的

ハンドヘルド上のデータベースのためのデスクトップ バックアップ ファイルが期限切れかどうかを決定します。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncIsDatabaseBackupNeeded (
   DBDatabaseInfo &hhInfo,
   TCHAR *filePath,
   DBDatabaseInfo *pDtInfo,
   HSBool *pDbExists,
   HSBool *pFileExists,
   HSBool *pBackupNeeded
)

パラメータ

  • ←→ hhInfo
    • テストするハンドヘルド データベースの名前、クリエイタ ID、タイプ、属性を指定する DBDatabaseInfo 構造体への参照。ハンドヘルド上にある一致するデータベース (が存在するのなら) に対する DBDatabaseInfo 構造体のセクション 1 の中にあるすべてのフィールドの値を受け取ります。filePath がディレクトリである場合、バックアップ ファイル名を生成するためにこの関数はこの関数が返すタイプと属性を使用します。
  • ←→ filePath
    • テストするバックアップ ファイルのデスクトップ ファイル名またはディレクトリを指定する TCHAR バッファへのポインタ。NULL を渡してはいけません。このパラメータが存在しているディレクトリを指定していて、ハンドヘルド データベースが存在している場合、このパラメータは自動的に生成されたファイル名を付加されたフル パスを受け取ります。
  • ← pDtInfo
    • filePath によって指定されたデスクトップ バックアップ ファイル (が存在するのなら) に対するセクション 1 の中にあるすべてのフィールドの値を受け取る DBDatabaseInfo 構造体へのポインタ。呼び出し元は NULL を渡すことができます。
  • ← pDbExists
    • true である場合、指定されたデータベースはハンドヘルド上に存在します。false である場合、存在しません。呼び出し元は NULL を渡すことができます。
  • ← pFileExists
    • true である場合、指定されたバックアップ ファイルはデスクトップ上に存在します。false である場合、存在しません。呼び出し元は NULL を渡すことができます。
  • ← pBackupNeeded
    • TRUE である場合、指定されたバックアップ ファイルはハンドヘルド上の指定されたデータベースと比較して期限切れになっています。FALSE である場合、そのファイルは「コメント」で定義されている期限切れにはなっていません。呼び出し元は NULL を渡すことができます。

返り値

成功した場合、SENCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_INVALID_IMAGE
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_PATH_NOT_FOUND
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_CANCEL_SYNC
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
    • デスクトップ上で利用可能なファイル ハンドルは不十分な状態です。 (訳者注: コンジットはクラシック データベースを一度に一つしかオープンさせておくことができないため、複数のクラシック データベースをオープンしようとするとこのエラーが起こります。)
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドはこの関数をサポートしない Palm OS バージョンを実行しています。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数はデスクトップ バックアップ ファイルが存在しているかどうか、ハンドヘルド上の対応するデータベースよりも古いかどうかを決定します。コンジットは HotSync マネージャがそのコンジットの OpenConduit() エントリ ポイントを呼び出した後からそのエントリ ポイントが返るまでの間ならいつでもこの関数を呼び出すことができます。同期マネージャはセキュア データベースを信任されているデスクトップにのみバックアップすることができるということに注意してください。

この関数は以下の条件がすべて真であるときにのみデスクトップ上のバックアップ ファイルが期限切れになっていることを考慮し (それゆえ、pBackupNeededTRUE をセットし) ます:

  • 指定されたデータベースがハンドヘルド上に存在している。
  • データベースのバックアップ ビットがセットされている。
  • 以下の 1 つまたは複数が真である:
    • バックアップ ファイルはデスクトップ上に存在していない。
    • バックアップ ファイルは存在している。しかしながら、そのバックアップ ファイルは同じタイプでないか、同じデータベース名とクリエイタ ID を持たないため、指定されたデータベースのバックアップ ファイルではない。
    • ハンドヘルドでの作成日付とデスクトップでの作成日付が異なる。
    • ハンドヘルドでの変更日付とデスクトップでの変更日付が異なる。
    • ハンドヘルドでの最終バックアップ日付が 0 である。
NOTE
データベースのバックアップ ビットがセットされていない場合、この関数は常に FALSE を返します。

filePath パラメータがデスクトップ上に存在しているディレクトリを指定していて、hhInfo パラメータがハンドヘルド上に存在しているデータベースを指定している場合を考慮してください。この場合、同期マネージャはハンドヘルド データベース ヘッダの中にある情報に基づいてバックアップ ファイルのファイル名を生成します。この関数が返るとき、そのファイル名をディレクトリ パスに付加し、このフル パスとファイル名を filePath 経由で帰します。

一方、filePath パラメータがデスクトップ上に存在していないディレクトリを指定していて、hhInfo パラメータがハンドヘルド上に存在しているデータベースを指定している場合を考慮してください。この場合、同期マネージャはパスの最後の部分がバックアップ ファイルのファイル名であるとみなします。この関数が返るとき、生成されたファイル名を付加することによって *filePath を変更することはしません。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

DBDatabaseInfo, SyncBackupDatabase(), SyncGenerateBackupFileName()

SyncLoopBackTest 関数 ^TOP^

目的

(Private) デバイスとの通信をテストします。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncLoopBackTest (
   UInt32 dwSizeSend,
   HSByte *pDataSend,
   UInt32 *pdwSizeRecv,
   HSByte *pDataRecv
)

パラメータ

  • → dwSizeSend
    • pDataSend バッファの中にあるバイト数を指定する UInt32 値。
  • → pDataSend
    • 送信するデータを保持しているバッファへのポインタ。
  • ←→ pdwSizeRecv
    • 受け取ったデータのバイト数を受け取る UInt32 値へのポインタ。
  • ← pDataRecv
    • データを受け取るためのバッファへのポインタ。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、負値のエラー コード値を返します。

コメント

この関数は内部テストだけを目的としたものです。

重要
この関数をあなたのコードの中で使用してはいけません。使用すると HotSync マネージャと衝突してハンドヘルド上のすべてのデータを破壊する可能性があります。

互換性

  • 同期マネージャ バージョン: 2.3 以降
  • Palm OS バージョン: すべて

SyncReadBackupImageInfo 関数 ^TOP^

目的

デスクトップ上のバックアップ イメージ ファイルからデータベース ヘッダ情報を読み込みます。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncReadBackupImageInfo (
   TCHAR *filePath,
   DBDatabaseInfo &info
)

パラメータ

  • → filePath
    • バックアップ イメージ ファイルのフル パスとファイル名 (null で終了する TCHAR 配列) へのポインタ。NULL を渡してはいけません。
  • ← info
    • filePath で指定されたバックアップ イメージ ファイル (が存在するのなら) に対するセクション 1 の中にあるすべてのフィールドの値を受け取る DBDatabaseInfo 構造体へのポインタ。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
  • SYNCERR_BAD_ARG
    • 渡された 1 つまたは複数のパラメータが無効です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_INVALID_IMAGE
    • 指定されたファイルは Palm OS データベースの有効なイメージではありません。
  • SYNCERR_NOT_FOUND
  • SYNCERR_PATH_NOT_FOUND
    • filePath によって指定されたパスは存在しません。
  • SYNCERR_TOO_MANY_OPEN_FILES
    • デスクトップ上で利用可能なファイル ハンドルは不十分な状態です。 (訳者注: コンジットはクラシック データベースを一度に一つしかオープンさせておくことができないため、複数のクラシック データベースをオープンしようとするとこのエラーが起こります。)
  • SYNCERR_UNKNOWN

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数を HotSync の最中でないときにも呼び出すことができます。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: 適用されません

参照

SyncBackupDatabase(), SyncInstallDatabase()

SyncReadFeature 関数 ^TOP^

目的

ハンドヘルド上の Feature マネージャから 32 ビット Feature 値を取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncReadFeature (
   UInt32 dwFtrCreator,
   UInt16 wFtrNum,
   UInt32 *pdwFtrValue
)

パラメータ

  • → dwFtrCreator
    • Feature クリエイタの ID。通常、これはその Feature を発行しているアプリケーションのクリエイタ ID です。
  • → wFtrNum
    • Feature 番号。ある特定のクリエイタの他の Feature と区別するためのものです。
  • ← pdwFtrValue
    • 指定された Feature の取得された値。

返り値

成功した場合、0 を返します。これは Feature が取得されたことを意味します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_MEM
  • SYNCERR_UNKNOWN_REQUEST
  • SYNCERR_NOT_FOUND
    • リクエストされた Feature は見つかりませんでした。これはその Feature が登録されていないことを意味します。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

Feature はシステム リセット時に消去され再初期化される揮発性の記憶装置に保存されています。Palm OS とアプリケーションはそれら自身のクリエイタ ID を使って Feature を登録することができます。Feature の内容は完全にアプリケーション特有のものです。

Feature マネージャについての更なる情報は、Exploring Palm OS: System Management を参照してください。

互換性

  • 同期マネージャ バージョン: 2.1 以降
  • Palm OS バージョン: 2.0 以降

SyncReadSingleCardInfo 関数 ^TOP^

目的

ハンドヘルド上の メモリ カード についての情報を取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncReadSingleCardInfo (
   CCardInfo &rInfo
)

パラメータ

  • ←→ rInfo
    • CCardInfo クラスのオブジェクト。これはメモリ カードについての情報を指定し、取得します。呼び出し元は m_CardNo メンバを指定しなければなりません。この関数は他のメンバに値を戻します。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_MEM
  • SYNCERR_NOT_FOUND
    • 指定されたカード番号は利用可能なカードの範囲外です。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

あなたは SyncReadDBList() 関数呼び出しに先立って ROM ベースと RAM ベースのデータベースの総数を決定するためにこの関数を使用することができます。

m_FreeRam フィールドに戻される値はそのハンドヘルドを動かしている Palm OS のバージョンに依存します:

  • ハンドヘルドがバージョン 3.0 以降を実行している場合、m_FreeRam の値はストレージ ヒープの中にある未使用の RAM だけを含みます。これはレコードやリソースのために使用することができるメモリの総数です。
  • ハンドヘルドが上記よりも前の Palm OS バージョンを実行している場合、m_FreeRam はストレージ ヒープとダイナミック ヒープ両方の中にある未使用の RAM の合計です。しかしながら、あなたがデータを保存できるのはストレージ ヒープにだけです。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

バージョンによる動作の違いについては「コメント」を参照してください。

参照

CCardInfo, SyncReadDBList()

SyncReadSysDateTime 関数 ^TOP^

目的

ハンドヘルドのシステム クロックに相当する現在の日付と時刻を取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncReadSysDateTime (
   SInt32 &rDate
)

パラメータ

  • ← rDate

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

Palm OS Cobalt を実行しているハンドヘルドでは、rDate は UTC 値として表されます; そうでない場合、ハンドヘルドのローカル タイムで表されます。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

SyncWriteSysDateTime()

SyncReadSystemInfo 関数 ^TOP^

目的

ハンドヘルドの Palm OS ソフトウェア バージョンとプロダクト情報を取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncReadSystemInfo (
   CSystemInfo &rInfo
)

パラメータ

  • ←→ rInfo
    • CSystemInfo クラスのオブジェクト。これはハンドヘルドについての情報を指定し、受け取ります。呼び出し元は m_AllocedLen を指定しなければなりません。

返り値

成功した場合、0 を返します。
失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数を使用するには、CSystemInfo クラスのオブジェクトの中にある m_ProductIdText バッファに割り当てを行い、オブジェクトの m_AllocedLen メンバに情報を埋め込んでください。あなたは m_AllocedLen にあなたが m_ProductIdText に割り当てと代入を行ったバッファのサイズを埋め込まなければなりません。

この関数はハンドヘルドのシステム情報をバッファに保存します。取得されたプロダクト ID は数バイトのバイナリ (ASCII ではありません) シーケンスです。現在のところ、すべてのハンドヘルドは同じ 4 バイト: 0x00, 0x01, 0x00, 0x00 を返します。

さらにこの関数は m_RomSoftVersion フィールドに情報を埋め込みます。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

CSystemInfo, SyncGetHHOSVersion()

SyncReadUserID 関数 ^TOP^

目的

ハンドヘルド上のユーザについての情報 - ユーザ名、最終同期日付、暗号化されたパスワードを含む - を取得します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncReadUserID (
   CUserIDInfo &rInfo
)

パラメータ

  • ← rInfo
    • CUserIDInfo クラスのオブジェクト。これはハンドヘルド上のユーザについての情報を受け取ります。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_MEM

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

ユーザ情報は同期の完了後に新しいハンドヘルドまたはリセットされたハンドヘルドに書き込まれます。ユーザ情報の書き込みがまだ行われていないハンドヘルドでは、ユーザ情報は空であり、rInfom_NameLength メンバは 0 にセットされています。

重要
あなたが Palm OS バージョン 3.0 よりも前のものを実行しているハンドヘルドから情報を読み込むために SyncReadUserId() を呼び出した場合、CUserIdInfo 構造体の LastSyncDate メンバは 0 にセットされています。バージョン 3.0 以降では LastSyncDate メンバは正しく最も最近の同期比付けにセットされます。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

バージョンによる動作の違いについては「コメント」を参照してください。

参照

CUserIDInfo, SyncReadSystemInfo()

SyncRebootSystem 関数 ^TOP^

目的

HotSync の最後にハンドヘルドをソフト リセットするようリクエストを送ります。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncRebootSystem (
   void
)

パラメータ

ありません。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

SyncRegisterConduit 関数 ^TOP^

目的

同期操作が開始されようとしているコンジットを登録して、他の同期マネージャ関数で使用するためのハンドルを返します。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncRegisterConduit (
   CONDHANDLE &rHandle
)

パラメータ

  • ← rHandle
    • あなたのコンジットへのハンドルのアドレス。

返り値

成功した場合、0 を返します。これは、コンジットが同期マネージャに登録され、同期で実行することができるということを意味します。

コンジットを登録することができなかった場合、-1 を返します。これは、前のコンジットがそれ自身を登録解除せず、あなたは同期でコンジットを実行できないということを意味します。

他の理由で不成功になった場合、以下の非 0 のエラー コード値を返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_CANCEL_SYNC
  • SYNCERR_LOCAL_CANCEL_SYNC

すべての同期マネージャ エラー コードの説明は 「共通同期マネージャ エラー コード」 を参照してください。

コメント

あなたのコンジットは他の同期マネージャへの呼び出しが起こる前にそれ自身を登録するために SyncRegisterConduit() を呼び出さなければなりません。

SyncRegisterConduit() が成功した場合、あなたのコンジットはそれ自身の OpenConduit() エントリ ポイントから返る前に SyncUnRegisterConduit() を呼び出さなければなりません。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

SyncUnRegisterConduit()

SyncRestoreSecurityData 関数 ^TOP^

目的

デスクトップからハンドヘルドへセキュリティ ボールト データベースをリストアします。

宣言されている場所

SyncCommon.h

Prototype

HSError SyncRestoreSecurityData (
   TCHAR *dir
)

パラメータ

  • → dir
    • リストアするボールト データベースのイメージ ファイルを保持しているディレクトリを指定する null で終了する TCHAR 配列へのポインタ。NULL を渡してはいけません。このディレクトリは SyncBackupSecurityData() 呼び出しによって前もってバックアップされた 1 つまたは複数のボールト データベースを保持していなければなりません。このディレクトリはさらに他のファイルも保持している可能性がありますが、それはバックアップ ファイルがボールトと同じファイル拡張子を使っていない場合にのみです。

返り値

成功した場合、SYNCERR_NONE を返します。

失敗した場合、以下の負値のエラー コード値の 1 つを返します:

  • SYNCERR_ACCESS_DENIED
  • SYNCERR_ARG_MISSING
  • SYNCERR_BAD_ARG
    • dir パラメータが NULL です。
  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_FILE_NOT_FOUND
  • SYNCERR_INVALID_IMAGE
    • 指定されたディレクトリの中にある 1 つまたは複数のファイルが Palm OS ボールト データベースの有効なイメージではありません。
  • SYNCERR_LOCAL_CANCEL_SYNC
  • SYNCERR_LOCAL_MEM
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_NOT_FOUND
    • デスクトップ上にボールト データベースが見つからないか、読み込むことができません。
  • SYNCERR_OPERATION_ABORTED
  • SYNCERR_PATH_NOT_FOUND
  • SYNCERR_REMOTE_BAD_ARG
  • SYNCERR_REMOTE_MEM
  • SYNCERR_REMOTE_NO_SPACE
    • ハンドヘルドはこの操作を完了するのには必要とされるメモリが不足しています。
  • SYNCERR_REMOTE_PASSWORD
    • パスワードが無効なためリストアは失敗しました。
  • SYNCERR_REMOTE_SYS
  • SYNCERR_TOO_MANY_OPEN_FILES
  • SYNCERR_UNKNOWN
  • SYNCERR_UNKNOWN_REQUEST
    • ハンドヘルドはこの関数をサポートしない Palm OS のバージョンを実行しています。以下の「互換性」を参照してください。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

ハンドヘルドがハード リセットされた後、ボールト は他のすべてのデータベースに先立って、ある特定の順番でハンドヘルドにリストアされなければなりません。それにより、ハンドヘルドの認証マネージャは他のセキュア データベースがリストアされることを許可します。この関数は指定されたディレクトリから認証マネージャによって要求された順番ですべてのボールト データベースをリストアします。ボールトがすでにハンドヘルド上に存在している場合、この関数はそれをハンドヘルドから削除し、デスクトップからそのボールトをリストアします。

互換性

  • 同期マネージャ バージョン: 2.4 以降
  • Palm OS バージョン: Palm OS Cobalt, バージョン 6.0 以降

参照

SyncBackupSecurityData()

SYNCROMVMAJOR マクロ ^TOP^

目的

ハンドヘルド上の Palm OS のメジャー バージョン番号をデコードします。

宣言されている場所

SyncCommon.h

Prototype

#define SYNCROMVMAJOR (
   l
)

パラメータ

  • → l
    • SyncReadSystemInfo() によって返される CSystemInfo オブジェクトの m_RomSoftVersion メンバによって受け取られたバージョン番号。

返り値

メジャー バージョン番号を UInt16 値として返します。

コメント

このマクロを使用するには、SyncReadSystemInfo() によって返された CSystemInfo オブジェクトの m_RomSoftVersion メンバの値を渡します。

m_RomSoftVersion の値は 0xMMmfsbbb という形式です。これは、

  • MM = メジャー バージョン
  • m = マイナー バージョン
  • f = バグ フィックス
  • s = ステージ (3 = リリース、2 = ベータ、1 = アルファ、0 = 開発)
  • bbb = リリースされないバージョンのビルド番号

例えば、m_RomSoftVersion = 0x01522003 である場合、SYNCROMVMAJOR() は 0x01 を返します。

参照

SyncReadSystemInfo(), CSystemInfo, SYNCROMVMINOR()

SYNCROMVMINOR 関数 ^TOP^

目的

ハンドヘルド上の Palm OS のマイナー バージョン番号をデコードします。

宣言されている場所

SyncCommon.h

Prototype

#define SYNCROMVMINOR (
   l
)

パラメータ

  • → l
    • SyncReadSystemInfo() によって返される CSystemInfo オブジェクトの m_RomSoftVersion メンバによって受け取られたバージョン番号。

返り値

マイナー バージョン番号を UInt16 値として返します。

コメント

このマクロを使用するには、SyncReadSystemInfo() によって返された CSystemInfo オブジェクトの m_RomSoftVersion メンバの値を渡します。

m_RomSoftVersion の値は 0xMMmfsbbb という形式です。これは、

  • MM = メジャー バージョン
  • m = マイナー バージョン
  • f = バグ フィックス
  • s = ステージ (3 = リリース、2 = ベータ、1 = アルファ、0 = 開発)
  • bbb = リリースされないバージョンのビルド番号

例えば、m_RomSoftVersion = 0x01522003 である場合、SYNCROMVMINOR() は 0x5 を返します。

参照

SyncReadSystemInfo(), CSystemInfo, SYNCROMVMAJOR()

SyncUnRegisterConduit 関数 ^TOP^

目的

以前の SyncRegisterConduit() 呼び出しで登録に成功したコンジットの登録を解除し、同期マネージャがそのコンジットのために割り当てていたすべてのシステム リソースをクリーン アップします。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncUnRegisterConduit (
   CONDHANDLE handle
)

パラメータ

  • → handle
    • 以前の SyncRegisterConduit() 関数呼び出しから返されたコンジットへのハンドル。

返り値

成功した場合、0 を返します。これは、あなたのコンジットが成功裏に登録解除されたということを意味します。

handle が有効なコンジット ハンドルでない場合、-1 を返します。

他の理由で不成功になった場合、以下の非 0 のエラー コード値を返します:

  • SYNCERR_COMM_NOT_INIT

すべての同期マネージャ エラー コードの説明は 「共通同期マネージャ エラー コード」 を参照してください。

コメント

この関数はハンドルが登録されているコンジットへのものかどうかを決定し、そうである場合はそのコンジットの登録を解除します。handle が登録されているコンジットへのハンドルではない場合、この関数は -1 を返します。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

参照

SyncRegisterConduit()

SyncWriteSysDateTime 関数 ^TOP^

目的

ハンドヘルド上のシステム日付と時刻をセットします。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncWriteSysDateTime (
   SInt32 lDate
)

パラメータ

  • → lDate
    • システム日付と時刻を指定する time_t 値。この値は time() 関数によって返されるフォーマットでなければなりません。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT
  • SYNCERR_LOST_CONNECTION
  • SYNCERR_REMOTE_SYS
  • SYNCERR_REMOTE_BAD_ARG

あなたがこの関数をバージョン 2.2 よりも前の同期マネージャ API の中で呼び出した場合、この関数は SYNCERR_REMOTE_BAD_ARG エラー コードを返します。

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

Palm OS Cobalt を実行しているハンドヘルドでは、lDate は UTC 値として表されます; そうでない場合、ハンドヘルドのローカル タイムで表されます。

一般に、コンジットはシステム日付と時刻を変更するのは避けるべきです。なぜなら、この関数はハンドヘルド上のアプリケーションに時刻を変更したことを通知しないからです。PalmSource の予定表などいくつかのアプリケーションはシステム時刻が変更されたことを知る必要があります。それによりそれらはアラーム設定を調整することができます。この問題に対処するには、あなたは SyncRebootSystem() 関数を呼び出す必要があります。この関数は HotSync の完了後にハンドヘルドをソフト リセットします。ハンドヘルド上のすべてのアプリケーションはリセットされたことを通知され、必要な調整を行うことができます。

重要
この関数は同期マネージャ API のバージョン 2.0 以降で利用可能です。しかしながら、この関数は同期マネージャ バージョン 2.4 以降が Palm OS Cobalt を実行しているハンドヘルドに対して処理を行う場合にのみ正しく機能します。バージョン 2.4 以降では、ハンドヘルドが Palm OS Cobalt 以前のものを実行している場合、この関数はクラッシュします。

同期マネージャ バージョン 2.1 以前では、SyncWriteSysDateTime() はエラー コードを返します。一方、バージョン 2.2 と 2.3 では成功裏に返りますが、実際にはハンドヘルドの時刻を変更しません。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

バージョンによる動作の違いはコメントの中の注意書きを参照してください。

参照

SyncReadSysDateTime()

SyncYieldCycles 関数 ^TOP^

目的

HotSync マネージャに HotSync の進捗表示インジケータを更新させます。

宣言されている場所

SyncCommon.h

Prototype

SInt32 SyncYieldCycles (
   UInt16 wMaxMiliSecs
)

パラメータ

  • → wMaxMiliSecs
    • HotSync マネージャがイベントを行うのに使用する最大ミリ秒数。この値は現在のところ無視されます; 1 を指定してください。

返り値

成功した場合、0 を返します。

失敗した場合、以下の非 0 のエラー コード値の 1 つを返します:

  • SYNCERR_COMM_NOT_INIT

すべての同期マネージャ エラー コードの説明については 「共通同期マネージャ エラー コード」 を参照してください。

コメント

HotSync Progress ダイアログ ボックスの中の進捗表示インジケータに現在の状態を示させるために定期的に SyncYieldCycles() を呼び出してください。あなたがこの関数呼び出しを十分頻繁に行うことを怠った場合、ユーザ インターフェイスは固まっているように見えます。

互換性

  • 同期マネージャ バージョン: 2.0 以降
  • Palm OS バージョン: すべて

共通同期マネージャ エラー コード ^TOP^

表 5.4 はスキーマ、拡張、クラシック同期マネージャ関数が返す可能性のあるエラー コードの値をリスト アップしています。各関数の説明でその関数が返す可能性のあるエラーはどれなのかが述べられています。

以下の名前を付けられているすべてのエラー コードはプリプロセッサ定数として定義されています。これらの定数はヘッダ ファイル SyncCommon.h で宣言されています。


表 5.4 共通同期マネージャ エラー コード

エラー コード 説明
0x00000000 SYNCERR_NONE 関数呼び出しはエラーを起こすことなく成功しました。
0x00001000 COND_ERR_CLASS この値を返す関数はありません。これはコンジットによって HotSync マネージャに返される他のすべてのエラー コードのためのオフセットです。
0x00002000 TRANS_ERR_CLASS この値を返す関数はありません。これはハンドヘルドとの転送/通信に関連するすべてのエラー コードのためのオフセットです。
0x00002900 EXPAPI_ERR_CLASS この値を返す関数はありません。これは拡張マネージャ API によって返されるすべてのエラー コードのためのオフセットです。
0x00002A00 VFSAPI_ERR_CLASS この値を返す関数はありません。これは VFS マネージャ API によって返されるすべてのエラー コードのためのオフセットです。
0x00004000 SYNC_ERR_CLASS この値を返す関数はありません。これは同期マネージャ API によって返されるすべてのエラー コードのためのオフセットです。
0x00004001 SYNCERR_UNKNOWN 未知のエラーが起こりました。通常、このエラーはデスクトップで予期しないシステム エラーが発生したことを示します。しかしながら、デスクトップがプロトコル エラーの認識に失敗したことを示すかもしれません。(後者は実際には起こるべきではありません。)
0x00004002 SYNCERR_MORE スキーマと拡張同期マネージャ関数によって返されます。応答を完全に取得するために呼び出し元はより多くのメモリを割り当てなければならないということを示します。
0x00004003 SYNCERR_NOT_FOUND リクエストされたデータベース、レコード、リソースなどが見つかりませんでした。
このエラー コードは以前の SYNCERR_FILE_NOT_FOUND エラー コードを置き換えました。
Note: さらに、このコードはデータベース内の反復処理時にこれ以上取得するレコードが無いということを示すためにも返されます。
0x00004004 SYNCERR_FILE_NOT_OPEN データベースをオープンしようとしましたが失敗しました。
0x00004005 SYNCERR_FILE_OPEN 使用されません。
0x00004006 SYNCERR_RECORD_BUSY リクエストされたレコードは他で使用中であり、未確定状態です。
0x00004007 SYNCERR_RECORD_DELETED リクエストされたレコードは削除されたか、アーカイブされたかのどちらかです。
0x00004009 SYNCERR_READ_ONLY 関数が Read-only モードでオープンされているか ROM の中にあるデータベースに書き込もうとしました。
このエラー コードは以前の エラー コードを置き換えました。
0x0000400A SYNCERR_COMM_NOT_INIT 通信が初期化されていないことを示す内部エラー コード。このエラーは、ハンドヘルドへのアクセスを必要とする関数が HotSync 操作の外で呼び出されたときに起こります。
0x0000400B SYNCERR_FILE_ALREADY_EXIST 指定されたオブジェクトをハンドヘルド上で作成することができませんでした。なぜなら、同じ名前を持つオブジェクトがすでに存在するためです。例えば、同じ名前を持つデータベースがすでに存在します。
0x0000400C SYNCERR_FILE_ALREADY_OPEN 指定されたデータベースはすでにオープンされています。あなたが呼び出した関数はデータベースがクローズされていることを要求します。
0x0000400D SYNCERR_NO_FILES_OPEN データベースへの読み込みまたは書き込みが行われようとしましたが、指定されたデータベースはオープンされていません。通常、これは渡されたデータベース ハンドルが無効であることを示します。
0x0000400E SYNCERR_BAD_OPERATION リクエストされた操作は与えられたデータベース タイプではサポートされません - 例えば、拡張データベースへの書き込みがスキーマ データベース ハンドルで行われようとしました。
0x0000400F SYNCERR_REMOTE_BAD_ARG ハンドヘルドはデスクトップ同期マネージャが検出できない無効なパラメータを渡されたということを見つけました - 例えば、非 0 のデータベース ハンドルはどのオープンされているデータベースにも対応しません。
0x00004010 SYNCERR_BAD_ARG_WRAPPER プロトコル実装エラーを示す内部デスクトップ リンク エラー。
0x00004011 SYNCERR_ARG_MISSING デスクトップとハンドヘルド間の通信が失われていることを示す内部エラー。このエラーは実際には起こるべきではありません。
0x00004012 SYNCERR_LOCAL_BUFF_TOO_SMALL 渡されたバッファは応答データに対して小さすぎます。
0x00004013 SYNCERR_REMOTE_MEM リクエストを受け取るまたは完了するにはハンドヘルドのメモリが不足しています。
0x00004014 SYNCERR_REMOTE_NO_SPACE リクエストを完了するにはハンドヘルド上のデータ保存場所の中のメモリが不足しています。一般に、これはハンドヘルド データベースにレコードまたはリソースを書き込もうとしたときに起こります。このエラーは SYNCERR_REMOTE_MEM と等価です。
0x00004015 SYNCERR_REMOTE_SYS ハンドヘルドでの汎システム エラー。これはハンドヘルド エラーが既存のデスクトップ エラー コードにマッピングされていないときに返されます。
0x00004016 SYNCERR_LOCAL_MEM デスクトップ コンピュータでメモリ割り当てエラーが起こりました - 例えば、デスクトップがメモリ不足になったときです。
0x00004017 SYNCERR_BAD_ARG デスクトップ同期マネージャが無効なパラメータを渡されたことを発見しました - 例えば、0 の値のデータベース ハンドルです。
0x00004018 SYNCERR_LIMIT_EXCEEDED ハンドヘルドでデータ上限の超過が起こりました。例えば、拡張同期マネージャ関数が 64KB を超えるデータをクラシック データベースに書き込むために使用されました、または、ハンドヘルドで HotSync エラー ログ サイズが超過しました。
0x00004019 SYNCERR_UNKNOWN_REQUEST ハンドヘルドはサポートされていないバージョンの HotSync プロトコルを実行しています - 例えば、Palm OS Cobalt に対してのみ機能する関数がそれ以前のバージョンの Palm OS を実行しているハンドヘルドに対して呼び出されました。
0x0000401A SYNCERR_ACCESS_DENIED ハンドヘルド上のアクセス許可マネージャがデータベースへのアクセスを拒否しました。または、データベースを不暗号状態にすることはできません。または、あなたは非デフォルトのソート インデックスを持つスキーマ データベース テーブルを削除することはできません。
0x0000401B SYNCERR_DEVICE_NOT_CONNECTED デバイスとの接続無しに関数は完了できません。
0x0000401C SYNCERR_INVALID_IMAGE インストールされようとしているイメージは無効な Palm OS データベースです。
0x0000401D SYNCERR_PATH_NOT_FOUND ディレクトリまたはファイル パスが向こうです。
0x0000401F SYNCERR_DISK_FULL ディスクがいっぱいなので、デスクトップ ディスクへの書き込みが失敗しました。
0x00008000 HSAPP_ERR_CLASS この値を返す関数はありません。これは HotSync マネージャ アプリケーションによって返されるすべてのエラー コードのためのオフセットです。
0x10000000 SYNC_FATAL_ERR_MASK この値を返す関数はありません。これはエラー コードが致命的エラーかどうかを決定するために使用されるマスクです。
0x10004000 SYNC_FATAL_ERR この値を返す関数はありません。これは致命的エラーであることを示すすべてのエラー コードのためのオフセットです。
0x10004403 SYNCERR_TOO_MANY_OPEN_FILES オープンされているクラシック データベースが多すぎるため、リクエストが失敗しました (同時にオープンできるクラシック データベースは 1 つだけです)。
このエラー コードは SYNCERR_TOO_MANY_FILES エラー コードを置き換えました。
0x10004405 SYNCERR_REMOTE_CANCEL_SYNC ハンドヘルドはハンドヘルド上で HotSync 操作をキャンセルするリクエストを検出しました。
0x10004411 SYNCERR_LOCAL_CANCEL_SYNC デスクトップ同期マネージャは HotSync 操作をキャンセルするリクエストを検出しました。
0x10006410 SYNCERR_LOST_CONNECTION ハンドヘルドとの接続が失われました - 例えば、ハンドヘルドが HotSync の最中にクレドルから取り外されたためです。

← 5 章のページ 1 へ ↑ 5 章のトップへ

← 4 章に戻る ↑トップへ 6 章に進む →