Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Вниз

Вызов из Word приложения Delphi?   Найти похожие ветки 

 
brestmarket   (2002-11-16 03:04) [0]

Вызов из Word приложения Delphi. У меня нижеприведенный код не работает, может есть у Вас другие альтернативные решения?

Assuming that you have Word2(6)/Delphi1 or 32bit Word/Delphi2.
Try:

Make macro in Word:
--------------------------------------------------------------------------------

Declare Function StringFromDelphi Lib "c:\sample\test.dll" As String

Sub MAIN
mystring$ = StringFromDelphi
Insert mystring$
End Sub


--------------------------------------------------------------------------------

Create simple TEST.DLL in Delphi - just form with a button. Save it (eg.in c:\sample - see Word macro) as test.dpr and testform.pas. Now add to your project EXPORTED function "StringFromDelphi" and "close" on button click. You can paste the stuff from below:
--------------------------------------------------------------------------------

library Test; (* test.dpr in c:\sample *)
uses Testform in "TESTFORM.PAS";
exports
StringFromDelphi;
begin
end.


--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

unit Testform; (* testform.pas in c:\sample *)
interface
uses
WinTypes, WinProcs, Forms, Classes, Controls, StdCtrls, SysUtils;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;

function StringFromDelphi : PChar; export;
{$ifdef WIN32} stdcall; {$endif}

implementation
{$R *.DFM}

function StringFromDelphi: Pchar;
var StringForWord : array[0..255] of char;
begin
Application.CreateForm(TForm1, Form1);
Form1.ShowModal;
Result:=StrPCopy(StringForWord, Form1.Button1.caption);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end;

end.


--------------------------------------------------------------------------------

Compile test.dll. Run macro from Word, Delphi form should appear - click the button to get some data from Delphi.


 
trotski   (2002-11-16 10:15) [1]

Делай ActiveX компонент и используй вызов его из Ворда. Я так троянчиеи писал. Могу код прислать.


 
brestmarket   (2002-11-16 10:21) [2]

Пожалуйста пришли - очень жду. В любом случае вопрос остается актуальным! - необходимо именно с помощью макроса вызывать функции из моей dll-библиотеки. Очень надеюсь на помощь.


 
brestmarket   (2002-11-17 04:42) [3]

Кто бы мне пару минут уделил - актуально ведь и многим интересно,- я уверен!


 
Давыд   (2002-11-17 10:17) [4]

Не знаю, прислали ли тебе уже исходники или нет. Как сделать ActiveX прочитаешь где-нибудь. А потом читай на
www.microsoft.com/rus/msdn/activ/article/library/kolesov/tips/0012.htm


 
Fantasist   (2002-11-17 10:50) [5]

Ты хоть бы написал, как не работает. Отладчиком бы походил, да выяснил бы подробнее процесс.



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

Форум: "Основная";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
3-92855
MaxM
2002-11-05 23:04
2002.11.28
---|Ветка была без названия|---


1-92971
Южанин
2002-11-15 14:25
2002.11.28
не работает стандартная функция LeftStr() и RightStr()


7-93268
Левша
2002-09-28 18:16
2002.11.28
Интересная работа программы... как сделать?


1-93013
ctapik-net
2002-11-18 16:41
2002.11.28
TShellListView или что нибудь подобное


1-93138
cosinus
2002-11-18 10:58
2002.11.28
Создание алгоритма димминга





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский