Проблема состоит в следующем. В первый раз в функцию FsGetFile тотал передаёт нормальное локальное имя файла, а в последующие разы уже испорченное, подскажите, почему так может быть?*
1-ый раз: http://floomby.ru/content/hug1OoMem0/
2-ой раз: http://floomby.ru/content/dsPglKZXCE/
Копирование папок из WFX плагина
Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
1. Если копировать файлы, для каждого ручками нажимая F5 - всё нормально
2. Если копировать файлы, выделив несколько и нажав F5 - всё нормально
3. Если копировать папку (или папки) в которых есть эти файлы - для первого файла функция вызывается с нормальными параметрами, для остальных с испорченными...
2. Если копировать файлы, выделив несколько и нажав F5 - всё нормально
3. Если копировать папку (или папки) в которых есть эти файлы - для первого файла функция вызывается с нормальными параметрами, для остальных с испорченными...
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
Не подтверждаю. Сейчас создал у себя в плагине простейшую функцию FsGetFileW (С++):
В плагине создал папку с десятком файлов и подпапкой, в которой ещё пара файлов, вызвал копирование — все имена пришли в функцию в нормальном виде.
Подозреваю, что где-то в коде плагина происходит порча данных, на которые опирается Тотал.
Код: Выделить всё
int __stdcall FsGetFileW(WCHAR* RemoteName, WCHAR* LocalName, int CopyFlags, RemoteInfoStruct* ri)
{
if (theApp.ProgressProcW(theApp.PluginNr, LocalName, RemoteName, 0) == 1)
return FS_FILE_USERABORT;
theApp.ProgressProcW(theApp.PluginNr, LocalName, RemoteName, 100);
return FS_FILE_OK;
}Подозреваю, что где-то в коде плагина происходит порча данных, на которые опирается Тотал.
Почему же, ё-моё, ты нигде не пишешь "ё"?
- CaptainFlint
- Сообщения: 6239
- Зарегистрирован: Вт дек 14, 2004 22:34
- Контактная информация:
Ну с ANSI сложнее. У меня этот плагин исключительно юникодный… Попробовал сейчас вместо FsGetFileW воткнуть FsGetFile с соответствующими модификациями, точно так же корректно всё работает, но не исключено, что общая юникодность плагина сказывается.
Идей больше не имею. Попробуй создать с нуля минимальный проект FS-плагина, где все функции — пустые заглушки, ну и чуть-чуть захардкоденных строк, чтобы список файлов непустой был, и на нём уже проверить поведение функции. Если и там баг воспроизведётся, то выложи этот мини-проектик на всеобщее обозрение. А то ни воспроизвести, ни проверить… У меня, правда, дельфей нет, так что поучаствовать смогу только методом пристального взгляда, но тут дельфистов немало обитает, авось помогут в поиске и отладке.
Идей больше не имею. Попробуй создать с нуля минимальный проект FS-плагина, где все функции — пустые заглушки, ну и чуть-чуть захардкоденных строк, чтобы список файлов непустой был, и на нём уже проверить поведение функции. Если и там баг воспроизведётся, то выложи этот мини-проектик на всеобщее обозрение. А то ни воспроизвести, ни проверить… У меня, правда, дельфей нет, так что поучаствовать смогу только методом пристального взгляда, но тут дельфистов немало обитает, авось помогут в поиске и отладке.
Почему же, ё-моё, ты нигде не пишешь "ё"?