Вниз
Скачать: CL | DM;

Помогите с PSafeArray   Найти похожие ветки 

 
DeMoN_Astra   (2003-09-29 11:44) [0]

Как из <paParams> вытянуть значения параметров, передаваемых в функцию?
Function LALA(paParams: PSafeArray{(OleVariant)}): HResult;
А то чего-то я уже не понимаю наверное...


 
Nikolay M. ©   (2003-09-29 12:10) [1]

А как формируется массив?
У меня формируется так:

procedure TrdmRemoteMain.GetLoggedOnUsers(out LoggedOnUsers: OleVariant);
var
i : integer;
begin
LoggedOnUsers := VarArrayCreate([0, Count - 1], varVariant);
for i := 0 to Count - 1 do
with TUserInfo(Items[i]) do
LoggedOnUsers[i] := VarArrayOf ([UserID, UserFirstName, UserFamilyName, ProjectName, LogonTime]);
end;

Обрабатывается потом так:
AServer := IrdmRemoteMainDisp(dmMain.scSocketConnection.GetServer);
AServer.GetLoggedOnUsers (LoggedOnUsers);
for i := VarArrayLowBound (LoggedOnUsers, 1) to VarArrayHighBound (LoggedOnUsers, 1) do
begin
sgLoggedonUsers.Cells[0, i - VarArrayLowBound (LoggedOnUsers, 1) + 1] := VarToStr (LoggedOnUsers[i][1]);
sgLoggedonUsers.Cells[1, i - VarArrayLowBound (LoggedOnUsers, 1) + 1] := VarToStr (LoggedOnUsers[i][2]);
sgLoggedonUsers.Cells[2, i - VarArrayLowBound (LoggedOnUsers, 1) + 1] := VarToStr (LoggedOnUsers[i][3]);
sgLoggedonUsers.Cells[3, i - VarArrayLowBound (LoggedOnUsers, 1) + 1] := VarToStr (LoggedOnUsers[i][4]);
end;

Сори, что поленился, выдрал as is.


 
DeMoN_Astra   (2003-09-29 15:57) [2]

в том и дело - формирую его не я... а у <PSafeArray> структура, мне не понятная! но в массиве - набор параметров.. а сам <PSafeArray> описан в ActiveX.pas .. помогите ;)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
1-27440
DNSokol
2003-09-25 10:18
2003.10.09
DLL и SQLConnection


8-27622
Gimer
2003-06-02 20:10
2003.10.09
Rorate TImage with JPEG


1-27524
13/NOx/79
2003-09-30 08:51
2003.10.09
Нужна помощь!


3-27321
noname666
2003-09-18 16:43
2003.10.09
StringGrid


1-27471
Relaxxx
2003-09-30 11:31
2003.10.09
Поиск в строке???




   Наверх