sigmarion IIIをパートナーシップを結ばずにLAN経由で同期する
普段Kubuntu環境しか利用していない身として、sigmarion IIIと同期を取る為だけにWindows環境を起動させたくありません。できればVMware Serverの仮想OS*1上にインストールしたActiveSyncと同期を取らせることができれば、再起動の手間とかがなくなり非常に便利です。
が、VMware Serverにて提供されるUSBエミュレーションではsigmarion IIIをUSB接続するとsigmarion IIIがフリーズしてしまい同期どころではありません*2。どうしたものかと考えていましたが、ActiveSync 3.xまではCEデバイスとパートナーシップを結んだ後はLAN経由で同期を取ることができます。
これはVMware Server上に構築されたActiveSync 3.8 on Windows 2000環境とパートナーシップを結ばずに無線LAN接続する方法について奮闘したときのメモ。
環境
ActiveSyncホスト(仮想環境)
- VMware Server 1.0.6 on Debian GNU/Linux 4.0(etch)/i386
- Windows 2000 Professional SP4
- コンピュータ名: vm-host
- ActiveSync 3.8日本語版
ActiveSyncホスト(Windowsネイティブ環境)
- Windows 2000 Professional SP4
- コンピュータ名: native-host
- ActiveSync 3.8日本語版
接続対象CEデバイス
- NTT DoCoMo sigmarion III
- CEデバイス名: sig3
パートナーシップ情報の取得
とりあえず、ネイティブ動作するWindows環境下でActiveSyncとsigmarion IIIとのパートナーシップを構成します。パートナーシップが構成できたら、母艦のレジストリエディタにてHKEY_CURRENT_USER\Software\Microsoft\Windows CE Service\Partners\01234567*3をエクスポートします。
エクスポートされたファイルを適当なエディタ*4で開き、以下のコメントに記述されたキーの値を適合するように編集。
[HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567] "Schedule Option"=dword:00000000 #CEデバイス名に変更 "DisplayName"="sig3" "DeviceType"="Jameson" "Description"="" #母艦上に作成する同期用フォルダを指定 "DataFolder"="C:\\Documents and Settings\\Username\\Application Data\\Microsoft\\ActiveSync\\Profiles\\sig3" "Processor"="" "ProcessorType"=dword:00000720 "OemInfo"="PDA for NTT DoCoMo" "TotalSize"=dword:00000000 "Version"=dword:038c0a04 "Capabilities"=dword:00000110 "ServerMajor"=dword:00000000 "ServerMinor"=dword:00000000 "PimsInstalled"=dword:00000000
[HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567\Services\Synchronization\Objects\Appointment] @="Appointment Object" "Store"="<*Invalid*>" "Display Name"="予定表" "Plural Name"="予定" #ActiveSyncのインストールパスが異なる場合は正しいパスとなるように編集。 #この例では予定表ですが、チャンネル、連絡先、ファイル、受信トレイ、Pocket Access、仕事も同様に編集します "DefaultIcon"="C:\\Program Files\\Microsoft ActiveSync\\outstore.dll,-131" "Disabled"=dword:00000001 "Preserve"="Store,Disabled,DefaultIcon,Display Name,Plural Name"
VMware Server上の母艦の設定
- エクスポートされたレジストリをインポート
- レジストリの\HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567\DataFolderキーの値のフォルダを作成(上記の例だとC:\Documents and Settings\Username\Application Data\Microsoft\ActiveSync\Profiles\sig3)
CEクライアント側の設定
CEデバイスで動作する適当なレジストリエディタを用いて以下のキーを編集する。
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Services\Partners\P1] #ネイティブ環境のコンピュータ名(native-host)からVMware Server環境のコンピュータ名(vm-host)に変更 "PName"="native-host" #パートナーシップのID "PId"=dword:01234567
ここまで設定したら
sigmarion IIIからネットワーク経由でのActiveSyncをかければVMware Server環境下の母艦と同期できるようになります。