2016-04-18 9 views
1

Windows Mobileデバイスにコピーするファイルがあります。ファイルサイズは約40 MBで、ここに私のコードです:Mobile Center(Active Sync)でファイルをWindows Mobileデバイスに高速コピーする方法

OpenNETCF.Desktop.Communication.RAPI clsPDTDevice = new RAPI(); 

string DeviceDbPath = "\\FlashFX Disk\\Table\\db_assetSL.db"; 
string BackOfficeDbPath = string.Format(@"{0}\Table\db_assetSL.db", Application.StartupPath); 

clsPDTDevice.Connect(); 
clsPDTDevice.CopyFileToDevice(BackOfficeDbPath, DeviceDbPath, true); 

これらのコードは動作していますが、私の問題は時間です。 40 MB未満の場合、40秒以上は適切ではありません。私はWindowsエクスプローラでファイルをコピーして、結果は同じでした。

コードに問題はありますか? これがモバイルセンターの問題であれば、ファイルをコピーする別の方法を誰かに教えてもらえますか?

db_assetSL.dbは、役立つ場合はSQLiteデータベースです。

私はこのファイルをモバイルセンターなしでコピーできたらもっとうまくいくかもしれません。このデータベースを圧縮する方法はありますか?それを解凍した後にコピーしますか?

答えて

0

大きなファイルを高速コピーできませんでしたが、Vacuum;コマンドを使用してsqliteデータベースでファイルサイズを小さくすることができました。

0

ファイルをUSB経由でコピーするのは、ほとんどの場合遅いです。あなたが言ったように、ファイルエクスプローラでさえ高速ではありません。 USBの場合:ハブを使用せず、デバイスを直接PCに接続してください。

デバイスに「Enhanced Network ...」サポートを使用しないように「USB to PC」を切り替えても、「古い」PPP_Peerが高速であると感じます。

デバイスが保留中の場合、ネットワーク接続経由​​でファイルをコピーすることができます。一部のデバイスには、FTPサーバーが付属しています。デバイスにftpサーバをインストールしたり、独自のソケットファイル転送コードを書き込んだりすることもできます。

+0

残念ながら、アクティブ同期ではドライブ文字が「\」になり、宛先アドレスをFile.Copy(送信元、宛先)に指定するときに大きな混乱が生じるため、ファイルをこのドライブにコピーする方法がわかりません。私は非常に遅いRapi.CopyFileToDeviceを使用する必要があり、私はそれを望んでいません。 –

+0

WMDCとopennetcfを使用している場合、他のオプションはありません。ネットワークプロトコルに切り替えることができます。 – josef

関連する問題