ExcelLib.dll

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

ExcelLib.dll

Сообщение GTHack »

Помогите разобраться !
Имеем
Галактика 5.73
ExcelFun.Inc
ExcelLib.dll 107008 байт
EXCEL.INC

в ExcelFun.Inc

Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'ExcelLib.dll';

Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'ExcelLib.dll';

смотрел ExcelLib.dll по F4 - там только
XLWriteToMatrix

ну ессно в процессе компиляции проектика с использованием вышеперечисленных фалов и функций - ругается на отсутствие этих ф-ий в dll-ке.
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: ExcelLib.dll

Сообщение m0p3e »

Обрати внимание на RegExcel.dll еще.
У меня
RegExcel.dll 974049 от 13.08.02
ExcelLib.dll 107008 от 13.08.02
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

dll такие же размером
кстати если на excellib.dll ссылка в ExcelFun.Inc то как RegExcel.dll цепляется ?
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: ExcelLib.dll

Сообщение edward_K »

выдержка из ExcelLib.dll
эт правда от 585.
XLSTWRITETOMATRIX такой нет
есть XLWRITETOMATRIX и XLWRITEMATRIXTOEXCEL
смотри внимательней
ExcelLib.dll GETDECIMALSEPARATOR GETTHOUSANDSEPARATOR SHORTSTRTODOS SHORTSTRTOWIN XLADDCOMMENT XLADDCOMMENTSHORT XLADDINSINSTAL XLADDSHEET XLALIGNCELLS XLALIGNCELLSEX XLAUTOFIT XLCLEARMATRIX XLCLEARRANGECOMMENTS XLCLEARRANGECONTENTS XLCLEARRANGEFORMATS XLCLOSEWORKBOOK XLCLOSEWORKBOOKBYNAME XLCOPYEXTFORMAT XLCOPYTOBUFF XLCREATEEXCEL XLCREATEEXCELWITHTEMPLATE XLCREATEMATRIX XLDELETERANGE XLDELETESHEET XLDELETESHEETBYNAME XLDELRANGEBYNAME XLDELRANGEBYNAMEINBOOK XLDISPLAYALERTS XLFRAMECELLS XLFREEMATRIX XLFREEZE XLGETACTIVEWORKBOOKNAME XLGETCELLDOVALUE XLGETCELLLOVALUE XLGETCELLSTVALUE XLGETCELLVALUE XLGETINDNAME XLGETINDNAMEINBOOK XLGETLASTERROR XLGETRANGEBYNAME XLGETRANGEBYNAMEINBOOK XLGETSHEETNAME XLGETSHEETSCOUNT XLGETUSEDRANGE XLGETWORKBOOKSCOUNT XLIMPORTMODULE XLINSERTRANGE XLISEXCELVALID XLKILLEXCEL XLMERGECELLS XLOPENEXCEL XLOPENNEWEXCEL XLOPENWORKBOOK XLPASTEALLFROMBUFF XLPASTEFORMATFROMBUFF XLREADFROMMATRIX XLREADMATRIXFROMEXCEL XLRUNMACRO XLSAVEASWORKBOOK XLSAVEASWORKBOOKBYNAME XLSAVEWORKBOOK XLSAVEWORKBOOKBYNAME XLSETACTIVESHEET XLSETACTIVESHEETBYNAME XLSETACTIVEWORKBOOK XLSETACTIVEWORKBOOKBYNAME XLSETBACKCOLOR XLSETCELLFORMULA XLSETCELLNUMBERVALUE XLSETCELLSTRINGVALUE XLSETCELLVALUE XLSETCOLUMNWIDTH XLSETFONTCOLOR XLSETFONTSIZE XLSETFONTSTYLE XLSETNUMBERFORMAT XLSETRANGENAME XLSETRANGENAMEINBOOK XLSETROWHEIGHT XLSETSHEETNAME XLSHRINKCELLS XLUNFREEZE XLWRAPTEXT XLWRITEMATRIXTOEXCEL XLWRITETOMATRIX XL_GETACTIVEWORKBOOKNAME XL_GETCELLSTVALUE XL_GETSHEETNAME
:)
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

цитирую себя же
>смотрел ExcelLib.dll по F4 - там только
>XLWriteToMatrix

как к ней обратиться то ?

на XLWRITETOMATRIX
говорит не описана (на самом деле в ExcelFun.Inc нет описания этой ф-ии)
а на XLSTWRITETOMATRIX и XLDOWRITETOMATRIX говорит - нет в DLL (что не есть ложь).
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: ExcelLib.dll

Сообщение m0p3e »

А ты их проекте опиши:
Function XLCREATEMATRIX(longint, longint) : boolean; external;
Function XLCLEARMATRIX : boolean; external;
Function XLFREEMATRIX : boolean; external;
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external;
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external;
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external;
Function XLWRITEMATRIXTOEXCEL(longint, longint) : boolean; external;
Function XLREADMATRIXFROMEXCEL(longint, longint, longint, longint) : boolean; external;

У тебя dll-ы не от той версии Галки. Чего ж ты хочешь?
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: ExcelLib.dll

Сообщение m0p3e »

А ты их проекте опиши:
Function XLCREATEMATRIX(longint, longint) : boolean; external;
Function XLCLEARMATRIX : boolean; external;
Function XLFREEMATRIX : boolean; external;
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external;
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external;
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external;
Function XLWRITEMATRIXTOEXCEL(longint, longint) : boolean; external;
Function XLREADMATRIXFROMEXCEL(longint, longint, longint, longint) : boolean; external;

У тебя dll-ы не от той версии Галки. Чего ж ты хочешь?
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

то что dll не от той версии это я знаю т.к. наскоко мне известно в 5.73 вообще их нет поэтому и подключаю внешнюю

в проекте у меня подключается ExcelFun.Inc в котором все это дело описано

......
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'ExcelLib.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'ExcelLib.dll';
.......

прикол как раз в том что их в ExcelLib.dll вроде как нет а есть XLWRITETOMATRIX - получается мне именно XLWRITETOMATRIX надо описывать в проекте ?
как тогда ей пользоваться ?

может чего с REGEXCEL.DLL делать ?

P.S. другие матричные ф-ии вроде работают
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: ExcelLib.dll

Сообщение edward_K »

regexcel это так для регистрации на pas.
должно и так прокатить. просто в версии 582 и выше не нужно указывать что функции лежат в такой то dll - galnet.exe сам найдет по regexcel.
тока не надо использовать те функции которых нет в твоей DLL.
xlstwritetomatrix и в доке не описана !!!
есть файлик то Excel.doc?
там вроде все подробно расписано - что с чем кушать.
попробуй для начала с этим примерчиком повозись - эт из доки - медленно зато надежно.
var XlRes : boolean; XlRes := True;
XlRes := xlCreateExcel(('MyBook.xls'), True);
XlRes := xlIsExcelValid;
Do
{
if (not XlRes) Break;

var sSheetName : string;
sSheetName := 'My sheet';
ExRes := xlAddSheet; if (not XlRes) Break;
ExRes := xlSetSheetName(1, sSheetName); if (not XlRes) Break;
ExRes := xlSetActiveSheetByName(sSheetName); if (not XlRes) Break;
ExRes := xlSetCellStringValue('Hello word!!', 2, 2, 2, 2); if (not XlRes) Break;
ExRes := xlSetFontSize(14, 2, 2, 2, 2); if (not XlRes) Break;
ExRes := xlSetFontStyle(xlItalic or xlUnderline, 2, 2, 2, 2); if (not XlRes) Break;

}
while False;
xlKillExcel;
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

а че с ним возится то ?
примерчик этот у меня работает !
да и многие другие работают !
запарка возникла именно с вариантными массивами ! - началось с того, что у меня появился примерчик работающий на версии 5.82 с использованием xlSTWriteToMatrix который я и захотел посмотреть в работе на 5.73 - при компиляции возникла ошибка - отсутствие описанных функций в dll тогда получается либо у меня косяковая dll (что не подтвердилось) либо .... ???

в доке есть описание только xlWriteToMatrix,
но как её объявить ?

вот как я все собираю в кучу -

exel.prj
#INCLUDE excelfun.inc;
#make 'exel.vip'



ExcelFun.Inc
как раз содежит описания ф-ий
......
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'ExcelLib.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'ExcelLib.dll';
........
(наскоко я понимаю судя по доке тут должно быть описание именно XLWRITETOMATRIX а не этих двух)


exel.vip
CONST
#INCLUDE excel.inc
END
........
сам фейс с вызовом вышеописанных функций
........
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

все - дошло
RegFun.pas
......
function XLSTWRITETOMATRIX(Row, Col : longint; Value : ShortString) : boolean;
begin
Result := PasExcel.xlWriteToMatrix(Row, Col, ShortStrToDos(Value))
end;
......


ответ крылся в REGEXCEL.DLL

как только это все на 5.73 зарегистрировать ????
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: ExcelLib.dll

Сообщение edward_K »

скорей всего этот примерчик не к той версии Excellib.dll
а вообще то да,для файлов от 585(584)
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'RegExcel.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'RegExcel.dll';
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external 'RegExcel.dll';
как в 582 не знаю - под рукой нет. :)
вроде раньше было не так.
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

чем дальше - тем интереснее

заменил в ExcelFun.Inc
........
Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'ExcelLib.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'ExcelLib.dll';
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external 'ExcelLib.dll';

на

Function XLSTWRITETOMATRIX(longint, longint, string) : boolean; external 'RegExcel.dll';
Function XLDOWRITETOMATRIX(longint, longint, double) : boolean; external 'RegExcel.dll';
Function XLREADFROMMATRIX(longint, longint, var AnyType) : boolean; external 'RegExcel.dll';

при компиляции пишет
заголовок:vip.exe - Точка входа не найдена
Содержание:Точка входа в процедуру BroadcastServerEvent не найдена в библиотеке DLL atlantis.rtl

при запуске то же самое но уже в galnet.exe,
а потом "ошибка загрузки regexel.dll"



короче видимо надо на 5.73 забросить это дело до обновления на более новую версию :(
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Re: ExcelLib.dll

Сообщение Max_Fin »

Не мучайся, напиши свою библиотеку, например, на Дельфях :-)
Жду выхода Вселенная 2.12!
GTHack
Местный житель
Сообщения: 517
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Новосибирск Новосибирск
Контактная информация:

Re: ExcelLib.dll

Сообщение GTHack »

не думаю, что при написании своей библиотеки меньше измучаюсь
[url=http://blog.gtalex.ru]Блог GTAlex[/url]
Ответить