2016-04-18 1 views
1

Файл, который необходимо скопировать в мобильное устройство Windows. Размер файла составляет около 40 МБ, и вот мой код:Как быстро скопировать файлы с помощью мобильного центра (Active Sync) на мобильные устройства Windows

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 секунд для менее 40 МБ не подходит вообще. Я скопировал файл с помощью проводника Windows, и результат был таким же.

Что-то не в порядке с моими кодами? Если это проблема мобильного центра, может ли кто-нибудь показать мне другой способ скопировать файл?

db_assetSL.db - это база данных SQLite, если это помогает.

Я мог бы быть более обнадеживающим, если бы мог скопировать этот файл без мобильного центра. Есть ли способ сжать этот db и после копирования разархивировать это?

ответ

0

Я не мог скопировать такой большой файл, но я мог уменьшить размер файла, используя команду Vacuum; с базой данных sqlite.

0

Копирование файлов через USB и в Flash происходит в основном медленнее. Как вы сказали, даже File Explorer не быстрее. Для USB: не используйте концентратор, но подключайте устройство непосредственно к ПК.

Если у вас есть выбор, переключите «USB на ПК», чтобы не использовать поддержку «Расширенная сеть ...» на устройстве, я чувствую, что «старый» PPP_Peer работает быстрее.

В ожидании устройства можно копировать файл через сетевое соединение. На каком-то устройстве есть FTP-сервер. Вы можете установить ftp-сервер на устройство или даже написать собственный код передачи файлов сокетов.

+0

К сожалению, я не знаю, как скопировать файл на этот диск, потому что активная синхронизация делает диск с буквой «\», и ​​возникает большая путаница, когда я указываю адрес назначения File.Copy (источник, пункт назначения). Я должен использовать Rapi.CopyFileToDevice, который очень медленный, и я не хочу этого. –

+0

Если вы используете WMDC и opennetcf, другой опции нет. Вы можете переключиться на сетевой протокол. – josef