몰랐슴다. ㅠ ㅠ
요즘 델파이 7가지구 장난좀 치고 있는데 립버전이라서 그런지 .NET 프리뷰는 눈을
씻고 봐도 못찾겠군요.
쩝..
헬프를 찾다보니 .NET 프레임웍을 COM을 거쳐 쓸 수 있더군요. 왜 몰랐을까.. 바붕
C++ 빌더에서 같은 소스로 해봤슴다.
잘 됨다.
근데 느림다.
뻔히 생각해 볼 수 있는 접근방향인데 왜 몰랐을까.. 아마 관심이 없어서 그랬겠죠?
델파이 7의 .NET프리뷰는 별도로 들어있는건지.. 아니면 설정값을 바꿔서 MSIL로 컴
파일 되는건지 아시는 분 좀 알려주세요. 장난좀 쳐 보게..
참고로 저같은 분들을 위해 테스트하는 소스를 올려봅니다.
먼저
C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705> regasm mscorlib.dll
먼저 어셈블리를 등록해주고..
폼에 버튼 하나 박아넣고 메모 하나 박아넣고
void __fastcall TForm1::Button1Click(TObject *Sender)
{
int capacity;
Variant item;
Variant dotNetArrayList;
dotNetArrayList = CreateOleObject("System.Collections.ArrayList");
capacity = dotNetArrayList.OlePropertyGet("Capacity");
dotNetArrayList.OleFunction("Add","A string item");
dotNetArrayList.OleFunction("Add","아침을 안무거떠니");
dotNetArrayList.OleFunction("Add","절라 배고프당");
dotNetArrayList.OleFunction("Add","쩝쩝");
item = dotNetArrayList.OleFunction("Item",0);
Memo1->Lines->Add(item);
item = dotNetArrayList.OleFunction("Item",1);
Memo1->Lines->Add(item);
item = dotNetArrayList.OleFunction("Item",2);
Memo1->Lines->Add(item);
item = dotNetArrayList.OleFunction("Item",3);
Memo1->Lines->Add(item);
dotNetArrayList.OleFunction("Clear");
}
|