Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.28;
Скачать: CL | DM;

Вниз

Необходимо вызвать из DLL функцию вызова Excell   Найти похожие ветки 

 
ganda ©   (2005-08-09 08:37) [0]

Добрый день!

Необходимо вызвать из DLL функцию вызова Excel и передачи данных в ячейку, если можно будет предоставить не большой модуль реализации данной проблемы.

Благодарю за Внимание!


 
evvcom ©   (2005-08-09 09:03) [1]

А другие ветки по форуму влом посмотреть? Например, это http://delphimaster.net/view/3-1123057899/


 
ganda ©   (2005-08-09 09:51) [2]

Спасибо за совет,  но это не то что я хотел. Из Delphi все без проблем. Необходимо создать функцию именно в новой DLL которая бы все это дело делала. Ситуация следущия в среде программирование в которой работаю нет поддержки языка OBJECT PASCAL хотя он схож с ним, поэтому нужно экспортировать из DLL


 
Думкин ©   (2005-08-09 09:54) [3]

> ganda ©   (09.08.05 09:51) [2]

А можно по русски и медленнее? В чем именно задача - по шагам.


 
ganda ©   (2005-08-09 09:59) [4]

1. Создать Excel.
2. Передача данных в ячейки созданого объекта
Эти 2 задачи необходимо делать непосредственно в DLL


 
isasa ©   (2005-08-09 10:30) [5]

А в чем проблема.
Создаем интерфейс

var appExc: OleVariant;
...........
appExc := CreateOleObject("Excel.Application");
........
и далее как обычно, только делаем в библиотеке.

Если предполагается вызов функций из Excel то тоже,
как обычно, только не забыть stdcall и то, что, integer в Excel VB - 16bit.


 
evvcom ©   (2005-08-09 10:39) [6]


> Необходимо создать функцию именно в новой DLL которая бы
> все это дело делала.

Ну так создай. Я что должен угадать в какой среде ты собираешься писать свою dll?

> Создать Excel

Это уже за тебя создали программисты Microsoft.


 
Думкин ©   (2005-08-09 10:39) [7]

> Ситуация следущия в среде программирование в которой работаю
> нет поддержки языка OBJECT PASCAL хотя он схож с ним,

А эта среда работает с интерфейсами?


 
ganda ©   (2005-08-09 10:45) [8]

Возникла следущая проблема, выдается следущая ошибка "Не был произведен вызов COINITIALIZA"


 
ganda ©   (2005-08-09 10:56) [9]

нет среда не работает с интерфейсами,
поэтому все что связано с внешними приложения экспорта и импорта в форматы WORD,EXCEL,DB  и т.д.
(кроме текстового формата, СИСТЕМА Называется "ДБО -BS Client ") приходится писать в DLL.


 
Amoeba ©   (2005-08-09 11:00) [10]


> ganda ©   (09.08.05 10:45) [8]
> Возникла следущая проблема, выдается следущая ошибка "Не
> был произведен вызов COINITIALIZA"

Ну так пропиши в начале CoInitialize, а по завершении CoUninitialize


 
ganda ©   (2005-08-09 11:22) [11]

Блин ламерский вопрос, где это все дело прописывать
в DLL если да то будь добр под скажи.
DLL создается в Delphi, но её реализация выглядит как вызов процедуры/функция.


 
isasa ©   (2005-08-09 11:38) [12]

Если CoInitialize(..) ( single-thread apartment(STA) ), то можно попробовать так:

library mylib;

procedure DLLEntryPoint(Reason: Word);
begin
 case Reason of
   DLL_PROCESS_ATTACH: CoInitialize(nil);
   DLL_PROCESS_DETACH: CoUninitialize;
 end;
end;

exports
....

begin
 DLLProc:=@DLLEntryPoint;
 DLLEntryPoint(DLL_PROCESS_ATTACH);
end.


 
ganda ©   (2005-08-09 12:09) [13]

Если можно будет более полный модуль Пожалуйста


 
TUser ©   (2005-08-09 12:37) [14]

Среда - FreePascal?


 
ganda ©   (2005-08-09 12:48) [15]

в какой среде все это дело вызывается все равно главное что бы модуль был сделан в динамической билиотеки, если знаем язык BSSript, то буду не против узнать как можно из неё вызвать Excel  и занести в её ячейку данные.


 
alex_***   (2005-08-09 13:38) [16]

Если эта среда умеет работать с COM объектами, то вперед. Если нет, то цепляй DLL


 
ganda ©   (2005-08-09 13:49) [17]

Да не работает в этой среде СОМ объекты, одни только DLL что в них напишеш то и будет работать.


 
Alexander Panov ©   (2005-08-09 14:09) [18]

ganda ©   (09.08.05 12:48) [15]
если знаем язык BSSript,


Не проще одратиться в БанкСофтСистемс по поводу языка скриптов?

В постинге [12] тебе написали, как вызвать Coinitialize.


 
evvcom ©   (2005-08-09 17:25) [19]


> ganda ©   (09.08.05 13:49) [17]

Если ты хочешь получить совет как написать то или это в Delphi, то так и спрашивай, а не мути с какими-то еще непонятными средами, неизвестными никому или подавляющему большинству. Если для тебя не составляет труда прицепить dll, то реализуй в dll пример из [1] и не морочь никому голову.


 
isasa ©   (2005-08-09 20:57) [20]

>Если можно будет более полный модуль Пожалуйста

так вроде все, остальное пишешь сам, там где ...

exports
....



Страницы: 1 вся ветка

Текущий архив: 2005.08.28;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.029 c
14-1123252381
Джо
2005-08-05 18:33
2005.08.28
Фотошоп или натура?


3-1121415647
msguns
2005-07-15 12:20
2005.08.28
Имеет ли DBGrid линейки прокрутки


14-1123013751
Ego
2005-08-03 00:15
2005.08.28
Ведь что такое фантазия? Это несознательная логика, но тем не мен


1-1122542200
HmG
2005-07-28 13:16
2005.08.28
Установка пакета


3-1121418058
Punch
2005-07-15 13:00
2005.08.28
Как закрыть все коннекты к базе?