우선 VB소스를 먼저 보시길 바랍니다.
Private Sub ProcessList()
Dim pp
Dim xx As Variant
Dim i, aa As Integer
Dim s, s1 as Variant
Set ps = CreateObject("ASPsvg.Process")
myarray = ps.GetProcessList // For문 에서 처럼 2차원배열을 가지고 있는 구조
aa = UBound(myarray) - 1 // 배열의 크기를 리턴을 합니다
For i = 0 To aa
s = myarray(i)(0)
s1 = myarray(i)(1)
List1.AddItem (s & "," & s1) // 리스트박스 입력시 묵시적 형 변환, 입력
Next i
---------------------------------------------------------------------------------
var
ProcessList : Variant;
List : Variant ;
Arr_Cnt, i : Integer ;
myVal,myVal1 : Variant ;
begin
try
ProcessList := CreateOLEObject('ASPsvg.Process');
List := ProcessList.GetProcessList;
//?? Cnt := High(List) - 1;
1. VB에서 처럼 List의 크기를 리턴하고 싶습니다.
VB에서는 Valiant형도 배열의 동일한 타입으로 리턴이 가능하므로
배열에서처럼 크기가 리턴이 됩니다.
VB: Ubound(배열) / Delphi: High(배열)
2. For문내에서 List의 배열값을 Valiant형으로 입력을 하고자 하는데
어떠한 방법이 있는지 알고 싶습니다.
결국, 위 VB소스는 제대로 작동을 하며, 위와 같은 기능을 가질 수 있도록
하고자 합니다.
어떠한 힌트라도 저에게 큰 도움을 될겁니다.
[참고] //?? 부분은 에러가 나는 부분입니다.
for i := 0 to 사이즈 do
begin
//?? myVal := List[i,0];
//?? myVal1 := List[i,1];
//ListBox1.Items.Add(List[i,0]);
end;
except
Application.MessageBox('실패'+Chr(13)+
'RealTimeEncoder가 설치되지 않았습니다','오류',MB_OK);
end;