Форум: "Основная";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];
ВнизОбработка переменной String в DLL Найти похожие ветки
← →
Zn (2002-11-13 10:21) [0]Ув. мастера! Объясните, почему функция, работающая с переменными String, работает в теле программы, но выдаёт ошибку "invalid pointer operation" при попытке вызвать её из DLL.
Может, вместо String нужно использовать PChar?
← →
MBo (2002-11-13 10:23) [1]читал, что delphi пишет при создании новой DLL про uses Sharemem?
← →
Zn (2002-11-13 10:26) [2]Ничего не пишет. Функция элементарная, использует только SysUtils и Classes.
← →
e-mike (2002-11-13 10:35) [3]Создай проект DLL приложения, и почитай, что она пишет
← →
Fredericco (2002-11-13 10:41) [4]Используй
PChar
илиWideString
.
← →
Внук (2002-11-13 10:42) [5]Воистину, господа, читайте хотя бы собственные исходники :))
← →
Zn (2002-11-13 10:46) [6]Понял, благодарю!
← →
Zn (2002-11-13 13:04) [7]Ув. мастера теперь подскажите, пожалуйста, как в DLL организовать передачу параметров и возвращение значения через PChar, например, такой функции:
function U866To1251(InpStr: String): String;
var i: Word;
begin
Result:="";
for i:=1 to Length(InpStr) do
case InpStr[i] of
"a": Result:=Result+"A";
"b": Result:=Result+"B";
"c": Result:=Result+"C";
else Result:=Result+InpStr[i];
end;
end;
← →
stone (2002-11-13 13:17) [8]http://delphi.mastak.ru/articles/usedll/index.html
← →
e-mike (2002-11-13 13:21) [9]Замени в объявлении функции String на PChar
и цикл начинай с нуля
← →
e-mike (2002-11-13 13:26) [10]>> и цикл начинай с нуля
и заканчивай length-1
кроме того замени
"a": Result:=Result+"A";
на
"a": Result:=strcopy(Result,pchar("A"));
← →
e-mike (2002-11-13 13:27) [11]>> и цикл начинай с нуля
и заканчивай length-1
кроме того замени
"a": Result:=Result+"A";
на
"a": Result:=strcopy(Result,pchar("A"));
и так далее
← →
Zn (2002-11-13 14:02) [12]А может цикл всё-таки до length, чтобы включит символ #0, или он добавляется автоматически?
← →
e-mike (2002-11-13 14:03) [13]Автоматически
← →
Zn (2002-11-13 14:04) [14]Благодарю!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.11.25;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.011 c