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




Вниз

Как правильно передать строку в DLL или правильно ее обработать? 


Geks   (2002-02-19 12:31) [0]

Нижеуказанная DLL вызывается в VisualFoxPro7
DECLARE Integer XFunc IN Path+"Xshell.dll" String @str
nRes = XFunc(Val) либо
nRes = XFunc(@Val)


На данном этапе мне нужно просто получить сообщение - значение DirPath,
но вместо например: "c:\somefolder" получается абракадабра в обоих случаях, хоть и разная

library Xshell;

uses
SysUtils, Classes, Windows, Dialogs;

{$R *.res}

function XFunc(DirPath: PChar): Integer;
var
ff: PChar;
begin
ff:= @DirPath; //если просто передать ff:= DirPath - Fox говорит ошибка пр вызове DLL
ShowMessage(ff);
Result:= 0;
end;

exports
XFunc;

begin
end.


Подскажите, пожалуйста, каким образом можно получить реальное значение DirPath



Geks   (2002-02-19 18:47) [1]

Что? Ни каких мыслей?



Geks   (2002-02-19 20:25) [2]

вообще-то по смыслу передается ссылка на строку, так вот вопрос в том как эту ссылку обработать и получить значение на которое она сылается?
Ну МАСТЕРА Delphi"й это ж ваш хлеб!!!



Юрий Зотов   (2002-02-19 20:56) [3]

> каким образом можно получить реальное значение DirPath

Если из VisualFoxPro передается правильное значение, значит оно и в DLL приходит правильное, что тут еще получать? А вот stdcall, вероятно, не помешает.

function XFunc(DirPath: PChar): Integer; stdcall;
begin
ShowMessage(String(DirPath));
Result:= 0;
end;



Geks   (2002-02-19 22:02) [4]

Вот что значит опыт!
StdCall на самом деле решила все праблемы.
СПАСИБО.




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




Наверх





Память: 0.72 MB
Время: 0.02 c
14-19296          Suntechnic            2002-01-19 00:24  2002.03.07  
Вот объясните мне неучу, что обсуждается вот в этом посте...


3-19044           HDD                   2002-02-07 15:50  2002.03.07  
Помогите пожалуйста дамы и господа


1-19240           Lord Vader            2002-02-20 06:59  2002.03.07  
СРОЧНО НУЖЕН ФИЛЬТР СТРОКИ ДЛЯ ДИПЛОМА!!!


6-19293           welvist               2001-12-18 17:47  2002.03.07  
Сканер МАК адресов компьютеров локальной TCP IP сети


1-19183           dart                  2002-02-18 14:58  2002.03.07  
Два вопроса