Invalid FileName (45)
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Re: Invalid FileName (45)
Вот потому-то я и не люблю "чёрные ящики".
Попробуй мой вариант
Попробуй мой вариант
Это я только кажусь дураком! На самом деле я полный идиот!
- Игорь Столяров
- Ветеран движения
- Сообщения: 7332
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Invalid FileName (45)
Без разницы - все равно нужно думать, смотреть код, справку и т.д.Губин Игорь писал(а):Попробуй мой вариант
Пользуйся MS Explorer для загрузки файлов - там все просто.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Re: Invalid FileName (45)
Добрый день!
Первая малююююююсенькая победа!
Получил 1 в инициализации библиотеки!
После этого вызов скачивания файла (HttpDownloadFile)- вызывает ошибку приложения. Значит какие-то параметры не так описаны:
Прототип:
(*CSTRING,*CSTRING ,long,long,*GROUP,*GROUP,LONG ),LONG,PASCAL,RAW,NAME('HttpDownloadFileA')
Вызов:
r#=HttpDownloadFile(LocalFile1,URL1,HTTP_TIMEOUT,HTTP_OPTION_NOCACHE,HTTPTRANSFERSTATUS,HttpEventDelegate,l3)
Описание параметров:
localfile1 CSTRING(128)
URL1 CSTRING(128)
HTTP_TIMEOUT LONG
HTTP_OPTION_NOCACHE EQUATE(0001h)
HTTPTRANSFERSTATUS GROUP,PRE()
dwBytesTotal LONG
dwBytesCopied LONG
dwBytesPerSecond LONG
dwTimeElapsed LONG
dwTimeEstimated LONG
END
HttpEventDelegate GROUP,PRE()
hClient LONG
nEventId LONG
dwError LONG
dwParam LONG
END
l3 LONG
Алексей
Первая малююююююсенькая победа!
Получил 1 в инициализации библиотеки!
После этого вызов скачивания файла (HttpDownloadFile)- вызывает ошибку приложения. Значит какие-то параметры не так описаны:
Прототип:
(*CSTRING,*CSTRING ,long,long,*GROUP,*GROUP,LONG ),LONG,PASCAL,RAW,NAME('HttpDownloadFileA')
Вызов:
r#=HttpDownloadFile(LocalFile1,URL1,HTTP_TIMEOUT,HTTP_OPTION_NOCACHE,HTTPTRANSFERSTATUS,HttpEventDelegate,l3)
Описание параметров:
localfile1 CSTRING(128)
URL1 CSTRING(128)
HTTP_TIMEOUT LONG
HTTP_OPTION_NOCACHE EQUATE(0001h)
HTTPTRANSFERSTATUS GROUP,PRE()
dwBytesTotal LONG
dwBytesCopied LONG
dwBytesPerSecond LONG
dwTimeElapsed LONG
dwTimeEstimated LONG
END
HttpEventDelegate GROUP,PRE()
hClient LONG
nEventId LONG
dwError LONG
dwParam LONG
END
l3 LONG
Алексей
- Игорь Столяров
- Ветеран движения
- Сообщения: 7332
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Invalid FileName (45)
Логично. Я в FTP раздел форума сбрасывал все прототипы функций и структур CST для Clarion.Алексей- Софт-Центр писал(а):Значит какие-то параметры не так описаны:
Все абсолютно рабочее и проверено многократо и кстати написано не мной, а самой CST когда оно еще считало, что Clarion будет развиваться как язык программирования.
Просто возьми их оттуда и вставь в программу.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Re: Invalid FileName (45)
Добрый день!
Все заработало!!!!
Огромное спасибо ВСЕМ-ВСЕМ ИГОРЯМ !!!!
Особенно Игорю
Ошибка была в прототипе:
Было:
Прототип:
(*CSTRING,*CSTRING ,long,long,*HTTPTRANSFERSTATUS,HttpEventDelegate,LONG ),LONG,PASCAL,RAW,NAME('HttpDownloadFileA')
Вызов:
r#=HttpDownloadFile(LocalFile1,URL1,HTTP_TIMEOUT,HTTP_OPTION_NOCACHE,HTTPTRANSFERSTATUS,HttpEventDelegate,l3)
Алексей
Все заработало!!!!
Огромное спасибо ВСЕМ-ВСЕМ ИГОРЯМ !!!!
Особенно Игорю
Ошибка была в прототипе:
Было:
Надо:Прототип:
(*CSTRING,*CSTRING ,long,long,*GROUP,*GROUP,LONG ),LONG,PASCAL,RAW,NAME('HttpDownloadFileA')
Вызов:
r#=HttpDownloadFile(LocalFile1,URL1,HTTP_TIMEOUT,HTTP_OPTION_NOCACHE,HTTPTRANSFERSTATUS,HttpEventDelegate,l3)
Прототип:
(*CSTRING,*CSTRING ,long,long,*HTTPTRANSFERSTATUS,HttpEventDelegate,LONG ),LONG,PASCAL,RAW,NAME('HttpDownloadFileA')
Вызов:
r#=HttpDownloadFile(LocalFile1,URL1,HTTP_TIMEOUT,HTTP_OPTION_NOCACHE,HTTPTRANSFERSTATUS,HttpEventDelegate,l3)
Алексей
- Игорь Столяров
- Ветеран движения
- Сообщения: 7332
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Invalid FileName (45)
Таки моя взяла ...Губин Игорь писал(а):Попробуй мой вариант
Кларионист, это не сишник, он думать и колдовать над кодом по своей сути не любит.
За теми кто отстал - не возвращаться. (С) Кодекс
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Re: Invalid FileName (45)
Т.е. он лентяй и не способен написать даже простенького "Helllow World" без применения дизайнера...
Это я только кажусь дураком! На самом деле я полный идиот!
- Игорь Столяров
- Ветеран движения
- Сообщения: 7332
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Invalid FileName (45)
Он - кларионист. Впрочем, как и я ...Губин Игорь писал(а):Т.е. он лентяй и не способен написать даже простенького "Helllow World" без применения дизайнера...
Не лентяй, скорее программист нацеленный на результат, а не на процесс.
В программировании за деньги - это считается нормально.
За теми кто отстал - не возвращаться. (С) Кодекс
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Re: Invalid FileName (45)
А что, есть те, кто занимается программированием бесплатно?! Дайте мне таких сюда, у меня куча задач для них. Ладно, кончаем хохмить, пошли в клаталк.
Это я только кажусь дураком! На самом деле я полный идиот!
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация:
Re: Invalid FileName (45)
Добрый день!
Не сочтите за "наглость":
А есть ли HttpDownload - не в файл , а в переменную?
Алексей
Не сочтите за "наглость":
А есть ли HttpDownload - не в файл , а в переменную?
Алексей
- Губин Игорь
- ✯ Ветеран ✯
- Сообщения: 2301
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Поблагодарили: 17 раз
Re: Invalid FileName (45)
См. моё решение. Там плевать куда. Чем и хороши решения "в исходных кодах"
А так, ну кто тебе решает сохранить во временный файл, а потом его прочитать? Код для получения уникального имени временного файла нужен?
А так, ну кто тебе решает сохранить во временный файл, а потом его прочитать? Код для получения уникального имени временного файла нужен?
Это я только кажусь дураком! На самом деле я полный идиот!
- Игорь Столяров
- Ветеран движения
- Сообщения: 7332
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Re: Invalid FileName (45)
Здесь как обычно два варианта ...
1. Есть такой метод в CST, если не ошибаюсь HttpGetData(..). Но придется инициализировать соединение, работать с областями памяти и т.д.
Не то что бы нельзя, просто если делаешь это не в "сях", то несколько затруднительно в отладке.
2. На мой взгляд проще загрузить одной командой CST файл в TEMP папку, перегрузить в строку и удалить.
Вариантов может быть масса - один из них я прикрепил к сообщению.
Строку лучше конечно инициализировать динамически, через NEW() по размеру уже загруженного файла.
Выбирай ...
1. Есть такой метод в CST, если не ошибаюсь HttpGetData(..). Но придется инициализировать соединение, работать с областями памяти и т.д.
Не то что бы нельзя, просто если делаешь это не в "сях", то несколько затруднительно в отладке.
2. На мой взгляд проще загрузить одной командой CST файл в TEMP папку, перегрузить в строку и удалить.
Вариантов может быть масса - один из них я прикрепил к сообщению.
Строку лучше конечно инициализировать динамически, через NEW() по размеру уже загруженного файла.
Выбирай ...
- Вложения
-
- ReadFileToString.clw
- Загрузка файла в строку
- (3.78 КБ) 456 скачиваний
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Ветеран
- Сообщения: 390
- Зарегистрирован: 26 Август 2009, 12:41
- Откуда: Moscow
- Контактная информация: