Można spróbować wykorzystać metody
Variant::CreateObject, lub
Varian::GetActiveObject w celu sprawdzenia, czy w ogóle Subiekt jest "widoczny" dla C++ Buildera (zakładając wykorzystywany OLE Aut.)
Całoś wykorzystuje bibliotekę -
- Kod: Zaznacz cały
#include <ComObj.hpp>
Przykładowe szukanie Subiekta:
Variant testSubiekt;
testSubiekt=NULL;
try
{
try
{
Variant testSubiekt=Variant::CreateObject("SubiektGT.Application"); //Tutaj dla CreateObject musisz sie wywiedziec jak Subiekt jest definiowany nazwa w OLE.
testSubiekt.OlePropertySet("Vsible",true);
testSubiekt.OlePropertyGet("Workbooks").OleProcedure("Add");
}
catch(EOleSysError *info_bledu)
{
Label1->Caption="Nie mozna polaczyc sie z Subiektem : "+info_bledu->Message;
}
catch(...)
{
Label1->Caption="Blad niezdefiniowany";
}
}
__finally
{
testSubiekt=Unassigned;
}
}