2016-04-18 33 views
1

Es gibt eine Datei, die in Windows Mobile-Gerät kopiert werden sollte. Die Dateigröße beträgt ca. 40 MB und hier ist mein Code:So kopieren Sie Dateien mit Mobile Center (Active Sync) schnell auf Windows Mobile-Geräte

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); 

Diese Codes funktionieren, aber mein Problem ist die Zeit. Über 40 Sekunden für weniger als 40 MB sind überhaupt nicht geeignet. Ich habe die Datei mit Windows Explorer kopiert und das Ergebnis war das gleiche.

Ist mit meinen Codes etwas nicht in Ordnung? Wenn dies Mobile Center Problem ist, kann mir jemand einen anderen Weg zeigen, um die Datei zu kopieren?

db_assetSL.db ist eine SQLite-Datenbank, wenn es hilft.

Ich könnte hoffnungsvoller sein, wenn ich diese Datei ohne Mobile Center kopieren könnte. Gibt es eine Möglichkeit, diese Datenbank zu komprimieren und nach dem Kopieren entpacken?

Antwort

0

Ich konnte solche große Datei nicht schnell kopieren, aber ich konnte Dateigröße verringern, indem ich Vacuum; Befehl mit sqlite Datenbank verwendete.

0

Kopieren von Dateien über USB und zu einem Flash ist meist langsam. Wie Sie gesagt haben, ist auch der Datei Explorer nicht schneller. Für USB: Verwenden Sie keinen Hub, sondern schließen Sie das Gerät direkt an den PC an.

Wenn Sie die Wahl haben, schalten Sie den "USB to PC", um nicht "Enhanced Network ..." Unterstützung auf dem Gerät zu verwenden, ich fühle, dass der "alte" PPP_Peer ist schneller.

Anhängig auf dem Gerät kann es möglich sein, die Datei über eine Netzwerkverbindung zu kopieren. Einige Geräte verfügen über einen FTP-Server. Sie können einen FTP-Server auf dem Gerät installieren oder sogar Ihren eigenen Socket-Dateiübertragungscode schreiben.

+0

Leider weiß ich nicht, wie ich meine Datei auf dieses Laufwerk kopieren kann, da die aktive Synchronisierung ein Laufwerk mit dem Buchstaben "\" erzeugt und eine große Verwirrung entsteht, wenn ich File.Copy (Quelle, Ziel) die Zieladresse gebe. Ich sollte Rapi.CopyFileToDevice verwenden, das sehr langsam ist und ich will es nicht. –

+0

Wenn Sie WMDC und Opennetcf verwenden, gibt es keine andere Option. Sie können zu einem Netzwerkprotokoll wechseln. – josef