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

Вниз

dll (строковый массив)   Найти похожие ветки 

 
sergey 101   (2003-12-28 13:26) [0]

Возникла необходимость сохранения текста в DLL и экспорте его.
Как можно реализовать передачу массивов строк(Pchar) и массивов целых чисел?
Заранее благодарен.


 
Dred2k   (2003-12-28 14:27) [1]

Ну а какие проблемы?
Передавай в DLL указатель на массив указателей на строки (PChar) + его размер. А далее - указатель на массив целых чисел + его размер. В DLL всю эту потеху можно будет только читать. Если хочешь всю "по-дельфевому" - ShareMem тебе поможет.
Если DLL может быть написана на С и прочее - вместо дельфевых массивов все же корректнее обычные буфера распределять под соответствующие элементы...


 
sergey 101   (2003-12-28 15:41) [2]

пример есть?


 
Dred2k   (2003-12-28 15:50) [3]

> sergey 101 (28.12.03 15:41) [2]

Пример _чего_ ?

P.S. Есть хелп и яндекс.
Всего и сразу требовать не красиво...


 
sergey 101   (2003-12-28 16:03) [4]

я мало понимаю в программировании-это не мой хлеб...
занимаюсь по-необходимости, я пытался найти в поисковиках, но не нашел применительно массивам ничего толклвого больше вопросов, чем ответов.
Человек который писал длл, сказал, что то что мне нужно выглядит так:

Procedure arrt(AR_table:array of Pchar);stdcall;
begin
ar_table[1] :="Structure Identifier Code";
ar_table[2] :="Ticket Number";
ar_table[3] :="Sequence Number";
..................................
ar_table[26]:="Customer Feature Action";
end;

.........
export serty,...,arrt

C Dll, если не считать написание обычных математических функций
опыта работы нет.

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

Опять же динамичекси я пробывал вызывать только простые ф-ции сумирования, где результат одно целое число. Не более.
Извините за навязчивость.


 
Dred2k   (2003-12-28 16:11) [5]

> я мало понимаю в программировании-это не мой хлеб...
> занимаюсь по-необходимости, я пытался найти в поисковиках,
> но не нашел применительно массивам ничего толклвого больше
> вопросов, чем ответов.


Ну так если перед тобой вдруг встала задача запрограммировать все это, так нужно учиться. Без навыков работы с памятью и ......... "на коленке" этого не сделать. С DLL работать просто, могу прислать кусок доки в PDF. Но тебе надо бы разобраться с распределением памяти, указателями, строками в дельфи и C (string и PChar). Пойми одно - если даже прислать тебе готовый код - это не выход. Дальше ведь больше.

> Человек который писал длл, сказал, что то что мне нужно
> выглядит так:


Вообще-то, бред какой-то. Тем более, учитывая твою постановку вопроса (передача данных _в функцию DLL_).


 
sergey 101   (2003-12-28 16:20) [6]

>Ну так если перед тобой вдруг встала задача запрограммировать все >это, так нужно учиться. Без навыков работы с памятью и ......... >"на коленке" этого не сделать.

Согласен ,я только "за", но пока, к сожалению времени не хватает
:(
честно.

извини,я неккоректно задал вопрос...
в длл уже все есть(опять же со слов автора длл), мне оттуда надо извлечь 1 массив Pchar и массив [1..78] longint.

Хотя я прихожу к мысли, что данная длл не удовлетворит моих потребностей, и мне самому надо будет написать, что-то похожее +
вбить туда текст, который будет более 255 символов, а потом читать его оттуда+те же массивы.
Поэтому опыт полученный от разбирательств с имеющейся длл мне пригодитья для своей.

Мне не нужна полностью дока по написанию dll, мне б конкретно по массивам и не более.

А со строками я вроде как разобрался...


 
Dred2k   (2003-12-28 16:24) [7]

> sergey 101 (28.12.03 16:20) [6]

Ясно. Тут только на конкретные вопросы ответить можно, пойми.
Лекций писать никто не будет. Для начала приведи декларации вызовов готовой DLL и суть работы функций согласно пояснениям автора библиотеки + как ты их собираешься использовать.


 
sergey 101   (2003-12-28 16:30) [8]

ок, спасибо....
наверное, разговор с автором придется отложить, до 8-го числа, не отвечат он....


 
Dred2k   (2003-12-28 16:33) [9]

> sergey 101 (28.12.03 16:30) [8]

У тебя есть время все изучить самостоятельно.
Автор твой, по-моему, сам хреново представляет все это. Начать, хотя бы, с ar_table[1] := для array of Pchar и т.д.



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

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

Наверх





Память: 0.47 MB
Время: 0.008 c
1-37795
UNick
2003-12-29 12:27
2004.01.13
Как сделать, чтобы исполнялось нажатие клавиши в OnChange


11-37592
Сызганов Николай
2003-04-21 12:52
2004.01.13
Работа с DBExpress ( D7) из-под КОЛ возможна?


14-37901
}|{yk
2003-12-19 11:26
2004.01.13
MSDN


14-37848
NewD
2003-12-22 15:55
2004.01.13
MS SQL SERVER - бесплатная версия - где найти ?


1-37602
BlackLord2003
2004-01-01 12:45
2004.01.13
Перекодировка текста





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский