![]() |
|
Модераторы: MetalFan |
![]()
|
|
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Приветствую !!!
У меня такая проблемка - в приложении инфа сохраняется в файл excel - разрабатывал дома и с excel 2002 всё работало нормально... Но когда попробовал запустить на работе на excel 2000 выдало ошибку Access violation at adress 9CF4BF59... Ошибка вылетает при сохранении, вот так оно выглядит: ExcelApp.Workbooks[1].SaveAs(FileName, EmptyParam, EmptyParam, EmptyParam, false, false, xlNoChange, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, icid); Я так полагаю, что дело в совместимости версий - не подскажете ли, чего надо дописать или наоборот убрать ??? |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
думаю проблема не в этом...
если делаешь через компоненты, то в этом можно убедиться набрав:
проблема может быть в переменной FileName... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Excel2000 - это название компонента ExcelApplication или особенность для 2000-го ??? У меня просто сейчас возможности проверить нет, завтра на работе посмотрю...
А с переменной FileName - что может быть не так ??? Путь ??? Просто дома-то работает всё на ура... А на работе - вылетает эта ошибка, а потом при закрытии самой проги - выдаётся сообщение о сохранении файла под именем Книга1 и если согласиться, то в файле всё данные четко записываются, как надо... |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
нет... просто когда одна и та же функция объявлена в нескольких подключёных модулях, то чтобы при обращении к фунции срабатывала нужная функция, необходимо указывать модуль... вот этот Excel2000 и есть обращение к конкретному модулю...
количество параметров и параметры такие же у 2000 как и у ХР (2002), я проверял... А с переменной FileName - эта переменная OleVariant - а у этого типа данных нелады с русскими буквами... отсюда и возможные ошибки могут вылетать... а если бы была проблема с несовместимостью, то вылетало бы что-то вроде следующего: "Method ... Not Supported Automatically Object" Это сообщение отредактировал(а) Albinos_x - 22.5.2006, 20:19 -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Т.е. следует попробовать указывать путь используя только англицкие буквы ?
Я, кстати, пробовал на работе изменить SaveAs параметры и когда сделал все (кроме имени файла конечно и последнего icid) EmptyParam-ами вылетела ошибка про variant, правда я не записал И ещё, может ли эта проблема быть связана с выбором версии офиса при установке самого Delphi ??? |
|||
|
||||
| Albinos_x |
|
||||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
желательно... странно... у меня всё нормально работает...
врят ли.... у меня работают приложения, которые давно ещё под 2000 делал и в ХРшном и в 2003... и наоборот...ХРшные работают и на 2000 и на 2003... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
||||
|
|||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Ладно, завтра попробую поменять путь... Надеюсь поможет...
|
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
ну... если что... заходи
бумс разбираться... -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
С путём ничего не получилось
Посмотрел в uses модуля и увидел там ExcelXP, попробовал удалить и написать Excel2000 Пробовал посмотреть через Excel2000. ... - но там какие-то константы, типы - я в этом совсем |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
код процедуры сохранения в студию
-------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Итак, код-с :
Сразу скажу, что всё работает, на ХР !!! А то как-то раз код написал, а чел грит, что такое работать не может !!! Да как же не может если всё работает !!! Это сообщение отредактировал(а) Girder - 19.9.2006, 17:20 |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
что стоит перед ExcelApp.Workbooks[1].SaveAs(...
2 команды? -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
EWs - это компонент Worksheet
А //Бла-бла-бла - это просто я так обозначил, что там ещё инфу записываю |
|||
|
||||
| Albinos_x |
|
|||
![]() Evil Skynet ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3288 Регистрация: 28.5.2004 Где: X-6120400 Y-1 4624650 Репутация: 15 Всего: 108 |
procedure SaveAs( FileName:OleVariant ; FileFormat:OleVariant ; Password:OleVariant ; WriteResPassword:OleVariant ;
ReadOnlyRecomended:OleVariant ; CreateBackUp:OleVariant ; AccesMode:XLSaveAsAccessMode ; ConflictResolution:OleVariant ; AddtoMru:OleVariant ; TextCodePage:OleVariant ; TextVisualLayout:OleVariant ; lcid:Integer) FileName - Имя файла в котором сохраняется книга, если имя и путь не указан, то книга сохранятся в текущем каталоге. (String) FileFormat - формат файла (Integer) Password - Пароль для открытия файла (String) WriteResPassword - Пароль для изменения файла (String) ReadOnlyRecomended - рекомендовать доступ только для чтения. (Boolean) CreateBackUp - всегда создать резервный копию (Boolean) ConflictResolution - способ разрешения конфликтов между пользователями AddtoMRU - Boolean - добавить файл в список недавно использованых (Boolean) AccesMode - режим доступа к файлу и может принимать значения: - xlNoChange - не изменять ранее установленный режим - xlExclusive - исключительный доступ пользователя к файлу. При этом если файл был в это время открыт другим пользователем, то ему будет предложено сохраниться под другим именем. - xlShared - свободный доступ так должно работать:
похоже я не туда копал.... у вас один лишний параметр оттуда и ошибка Это сообщение отредактировал(а) Albinos_x - 24.5.2006, 20:12 -------------------- "Кто владеет информацией, тот владеет миром" Уинстон Черчилль |
|||
|
||||
| Litta |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 14.3.2006 Репутация: 1 Всего: 1 |
Пасиба !!!
Завтра попробую !!! |
|||
|
||||
![]()
|
| Правила форума "Delphi: ActiveX/СОМ/CORBA" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |