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

Вниз

Хорошее занятие если вам нечего делать!   Найти похожие ветки 

 
Ru ©   (2002-11-07 12:42) [0]

По количеству веток шкодеров-кодеров и прочей лабуды пришел к выводу, что мой вопрос будет звучать не самым глупым образом.

Исходные условия: Есть Word, моя dll и третья программа.

Задача: Передать данные из dll в Word

Предусловие:
dll подключена к Word:
Declare Function GetЬуфтштп Lib "C:\Windows\Application Data\Microsoft\Word\Startup\дши.dll" () As Single

Известно что тип Single - соответствует типу real.
(последнее полученно методом тыка)

Необходимо:
я делаю следующее беру из окошка третьей программы данные (тип string) функцией своей dll колдую над этими данными и передаю в Word.

Проблема:
передать строку из Word в dll не проблема (это отдельная история)
проблема получить строку из dll в Word
(пробовал передавать строку возникает ошибка, пробовал strtofloat возникает ошибка, пробовал strtoint затем хитрым образом в real ошибка)

Просьба кто-нибудь знает как по-человечески или не по-человечески передать строковый параметр в Word или как его преобразовать таким образом, чтобы Word его съел.

Постусловие:
сервер автоматизации не подходит, с СОМ пока не могу разобраться, есть один метод стопроцентночерезжоповый, но он работает (через левый текстовый файл)

Замечание: вся проблема в согласовании типов Дельфи в слепом васе (Visual Basic)


 
Игорь Шевченко ©   (2002-11-07 12:46) [1]

COM - оно рулез. Разбирайся


 
Aristarh ©   (2002-11-07 12:50) [2]

Вот как дают советы настоящие мастера :-)
(в компетентности Игорь Шевченко © не сомневаюсь)


 
Ru ©   (2002-11-07 13:08) [3]

Сам знаю, что СОМ рулез, но это требует довольно много времени и не просто, а свободного. Сейчас то нужно просто передать данные из длл и получить в ворд.
Я этот вопрос в форуме васиковцев давал ответов ноль просмотров штук десять. Их клинит от такого вопроса и ответить никто не может.

>Aristarh © (07.11.02 12:50)

В компетентности Игоря Шевченко не сомневаюсь. пока не было повода, он дает верные ответы, но проблема то передачи существует. Возможно у меня единичный случай.


 
Ru ©   (2002-11-07 15:18) [4]

Нашел способ извращение конечно, но не такое как рантше.Ж:)

Объявление процедуры из длл:
Declare Sub MyProc Lib "MyLib.dll" (ByVal Param As String)
Объявление функции:
Declare Function MyFunc Lib "MyLib.dll" (ByVal Param As String) As Single

я использовал типы Single для приема работает.
тип String на передачу работает, на прием программа выполнила недопустимую операцию ...

для получения типа real не пользуйтеся функцией strtofloat вот это место я и делал через пятую точку опоры: стору разрезал для получения двух целых значений, их соединил и преобразовал в инт, а потом числу риал присвоил частное от деления конечного инт на необходимое число: r:=i/10;//i:integer, r:real

Ворд вещь хорошая, но за бесик Била убить мало!!!!!



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

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

Наверх




Память: 0.48 MB
Время: 0.017 c
1-82718
AndrewCh
2002-11-14 19:48
2002.11.25
Наиболее оптимальный поиск с заменой подстроки в файле


6-82893
s002156Shurik
2002-09-30 01:23
2002.11.25
Знающие люди откликнитесь пож.


1-82816
m-Sergo
2002-11-14 00:06
2002.11.25
изменить Window State главной формы


1-82796
Live_Aus_Berlin
2002-11-13 16:37
2002.11.25
У кого нибудь есть исходники проги которая считает производные


4-83046
_vadim_
2002-10-14 01:48
2002.11.25
правый клик на компоненте