Главная страница
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.021 c
3-82660
OlegE
2002-11-06 14:45
2002.11.25
Yaffil ?


3-82617
EAlexander
2002-11-04 19:00
2002.11.25
про сервера


3-82645
AccessLamer
2002-11-06 11:49
2002.11.25
Хочу аналог интербейсовского генератора в аксесе...


8-82870
Groove
2002-08-04 21:43
2002.11.25
Как изменить скорость воспроизведения.


14-82948
Феликс
2002-11-05 21:48
2002.11.25
Сайт, где можно скачать книги?