2015-10-07 2 views
0
INetC::get "ftp://user:[email protected]/bbb/ccc.exe" "$INSTDIR/bbb/ccc.exe" /end 

Я использую приведенный выше сценарий для загрузки файла из местоположения ftp. Индикатор выполнения не показывает общий размер файла, и он всегда будет отображать 0% от 0 КБ. (646kB (0%) 0kB @ 894.8kB/s) любые идеи, как показать правильный размер файла и правильный процент.INetC :: get from ftp location не показывает процент загрузки

BTW, если я загружаюсь из местоположения Dropbox, он отображает правильные значения.

Update

Wireshark след:

SIZE bbb/ccc.exe 
550 SIZE not allowed in ASCII mode 
TYPE I 
200 Type set to I 
PASV 
227 Entering passive mode(192,**,***,**,221,185). 
SIZE bbb/ccc.exe 
213 50225880 
RETR bbb/ccc.exe 
150 Opening BINARY mode data connection for bbb/ccc.exe (50225880) 

ответ

1

Предоставление URL-адреса реального FTP-сервера поможет, нет возможности диагностировать это без доступа к серверу.

Я знаю, что плагин реализует некоторые обходные пути для сломанных серверов, но я думаю, что это не всегда работает.

Плагин использует библиотеку WinInet и должен отображать строки прогресса в тех же местах, что и Internet Explorer. Он работал для меня на нескольких серверах, которые я пробовал:

InitPluginsDir 
INetC::get "ftp://ftp.gnu.org/pub/gnu/make/make-4.1.tar.gz" "$PluginsDir\test.bin" 
Pop $1 
DetailPrint $1 
+0

Я просто быстро проверил URL-адрес ftp, который вы указали. Это просто отлично. Я не могу указать здесь URL, так как у него есть конфиденциальная информация. Как я могу отладить это. Я не знаком с отладчиками плагинов. – Vivek

+0

Можете ли вы дать мне пробную программу для отладки моей проблемы? – Vivek

+0

@Vivek Вы должны начать с анализа трафика с помощью Wireshark, Fiddler или другого инструмента захвата трафика и посмотреть, есть ли какие-либо подсказки, почему информация о размере не найдена. Возможно, вы можете изменить плагин для вызова FtpGetFileSize, если он этого еще не сделал. Чтобы на самом деле отладить плагин, вам нужно будет установить WinDbg и/или Visual Studio, и вам, вероятно, также придется трассировать в WinInet, для этого требуется справедливый бит win32 и знания отладки ... – Anders

0

Это похоже на вопрос с вашим сервером. Есть что-то особенное? Возможно, это можно установить в настройках (конфигурации) сервера.

Плагин работает отлично для меня (даже для вас, когда вы пишете), поэтому я предполагаю, что есть скрытый улов.

Можете ли вы запустить установщик с приложением отладчика? Вам нужно отладить подключаемый модуль, а не NSIS, e. г. в Visual Studio.

Это покажет вам, какие значения плагин получает в качестве ответа от сервера и может решить проблему.

+0

Как отлаживать? У меня не было плагина для отладочных файлов. – Vivek

+0

Какие настройки мне нужно посмотреть на ftp-сервере? – Vivek

Смежные вопросы