Activex technológia - stadopedia
Többkomponensű objektumok modellje. OLE technológia.
Dokumentumok közötti adatcsere. Az adatok megosztásának módjai.
Párhuzamos munka és információcsere a WINDOWS alkalmazások között. Hozzon létre egy kombinált dokumentumot.
1. Amint már említettük, a WINDOWS lehetővé teszi több program futtatását és átvált egy programról a másikra. Ez felveti az adatokat az egyik dokumentumról egy másikra, az adatok megosztására, stb.
A legegyszerűbb esetben, ha egy adatot egy alkalmazásból egy másikban kíván használni, használhatja a legegyszerűbb eszközt, amely a WINDOWS - a vágólapot biztosítja.
A súlyos problémák megoldása A WINDOWS kétféle módon oszthat meg adatokat különböző alkalmazásokkal: dinamikus adatcsere (DDE) és objektum összekapcsolása és beágyazása (OLE).
2. A dinamikus adatcsere (DDE) a legrégebbi technológia az alkalmazások közötti adatcserére. A DDE támogatás azonban a Windows 98 rendszerben mentett, ez a technológia hosszú ideig használható.
A DDE technológia egy dokumentum egyes töredékei között létrejött linkre támaszkodik, valamint a különböző alkalmazások dokumentuma között. Az ilyen kommunikációs mechanizmus jelenléte lehetővé teszi, hogy automatikusan frissítse a fogadó dokumentumban lévő adatokat, amikor az adatforrásban változások történtek. A DDE egy folyamatközi kölcsönhatás modell - egy protokoll, amellyel egy alkalmazás egy kommunikációs csatornát rendezhet egy DDE szerverrel, amely ugyanazon a gépen található. A DDE egy üzenetkezelő protokoll, amely lehetővé teszi, hogy egy alkalmazás végrehajtását kezdeményezze egy alkalmazásból a másikból. Kezdetben a DDE technológiát használta a dokumentumok nélküli műveletek végrehajtása az alkalmazások megnyitása és a Windows vágólap használatakor. A DDE makró nyelv tartalmazza mind az DDE parancsokat, mind a makró nyelvparancsokat az alkalmazáshoz. Így a DDE makró nyelv használatához nem elegendő az érdekelt alkalmazás belső nyelvének tanulmányozása, hanem a DDE ismerete és a kiszolgáló alkalmazás nyelvének ismerete is. A DDE egy aszinkron protokoll. Más szavakkal, a kapcsolat létrejötte után a hívó fél elküldi a kérést, és várja a visszaküldendő eredményeket.
A DDE makró nyelv túlságosan bonyolult - nem csak a hétköznapi felhasználók, hanem sok programozó úgy gondolja, hogy nehéz vele dolgozni. Ezért a Microsoft elvárásaival ellentétben a DDE technológia nem tudta teljes mértékben megvalósítani a rá vonatkozó reményeket.
3. A DDE alacsony népszerűsége arra késztette a Microsoftot, hogy keresse meg a különféle módokat. Egy magasabb szintű technológia, az OLE 1.0 OLE 1 (Objektum összekapcsolása és beágyazása) megvalósítása. Bővítette a DDE protokoll lehetőségeit, és alapvető kommunikációs mechanizmusként lehetővé tette a beágyazott objektum aktiválását a dokumentumban, vagyis összetett dokumentum létrehozásához.
Határozzunk meg néhány szót:
Client (Kliens). Ez a kifejezés olyan alkalmazás, amely beágyazott vagy kapcsolt objektumokat tartalmaz. Például ha egy szövegszerkesztő dokumentumba tesz egy táblázatkezelő lapot, akkor a szövegszerkesztő ügyfél lesz. Az ügyfélalkalmazás és az összetett dokumentum kombinálásával olyan alkalmazást hozhat létre, amelyet csak egy másik alkalmazás számára kereteznek
Szerver (kiszolgáló): A kiszolgáló olyan alkalmazás, amelyet egy ügyfélalkalmazás használ egy adott objektummal való együttműködésre. A beágyazott vagy kapcsolt objektumok az alkalmazás formátumában vannak, amelyben létrehozták őket. Az ügyfélnek meg kell hívnia a forrásalkalmazást (szervert) az objektum tartalmának módosításához. Valójában, amikor összetett dokumentumokkal dolgozik, egyszerre két alkalmazást használnak. Az OLE esetében feltételezzük, hogy a kiszolgáló alkalmazás ugyanazon a számítógépen található. Amikor egy Word-dokumentumba ágyaz be Excel-lapot, mindkét alkalmazásnak telepítve kell lennie a számítógépen. Ha ActiveX technológiát használ, nincs szükség szerveralkalmazásra ugyanazon a számítógépen (bár jelenléte jelentősen lerövidítheti a működési időt). Amikor az Internet Information Serverhez bővítményeket fejlesztenek, az objektummal végzett munkák kizárólag a szerveren történhetnek, amely csak az objektum megjelenítéséhez szükséges adatokat adja vissza a helyi számítógéphez.
Összetett dokumentum. Ez egy dokumentum, amely egy vagy több objektumot tartalmaz (más dokumentumokat). Minden OLE objektum összetett dokumentumként kezelendő.
Object (objektum). Egy objektum egy olyan adat, amely az egyik alkalmazásból átmásolható a forrásalkalmazásban használt formátumban. Objektumok bármely adatból létrehozhatók, ha az erre a célra használt alkalmazás támogatja az OLE-t. Fontos megjegyezni, hogy az OLE objektumok, ellentétben a hagyományos adatokkal, sokkal több műveletet nyújthatnak, mint az egér húzása vagy a WINDOWS vágólap használatával.
Konténer: A konténer olyan objektum, amely más objektumokat tartalmaz magában. Az egyszerűsített konténer egy lemezen mappaként jeleníthető meg. Azonban a mappától eltérően az OLE objektum tároló nemcsak fájlokat, hanem más típusú objektumokat is képes tárolni.
Az OLE technológia a dokumentum és az alkalmazás közötti kapcsolatra támaszkodik, valamint az alkalmazások kommunikációjára tervezett mechanizmuson. Az ilyen mechanizmus jelenléte lehetővé teszi, hogy egy alkalmazás vagy egy fájl / dokumentum átvitele valamelyik alkalmazásnak a kimeneti dokumentumba, miközben megszerzi a beépített vagy kapcsolt objektum tulajdonságait. A kibocsátáshoz kötött dokumentum egyúttal megszerzi az összetett dokumentum tulajdonságait is, vagyis olyan dokumentumot, amely más alkalmazások által létrehozott különböző formátumú beépített vagy kapcsolt objektumokkal rendelkezik. Azonban nem minden Windows alkalmazás támogatja az OLE technikát. Képesek erre az alkalmazásra három csoportra oszthatók. Az OLE-kiszolgálók (forrásalkalmazások, szülői alkalmazások) olyan alkalmazások, amelyekből beágyazhatók objektumok vagy más alkalmazásokhoz társíthatók; Az OLE ügyfelek (alkalmazás-vevők) olyan alkalmazások, amelyek beágyazott objektumokat helyezhetnek el dokumentumaikba az OLE-szerverekből. Az ilyen dokumentumokat összetettnek nevezik; Az alkalmazások, amelyek egyszerre képesek mind a kiszolgáló, mind az ügyfél szerepére. Az OLE használatához két lehetőség közül választhat: az objektummal való kapcsolat létrehozása és az objektum beágyazása (beágyazása). A legfontosabb különbség az eszközök összekapcsolása és végrehajtása között az adatok tárolásának módja.
Ebben a tekintetben az OLE 1 specifikáció jelentős problémát tartalmazott, mivel a kapcsolódó fájl helyét az OLE 1-ben egy kemény kapcsolat határozta meg.
Először is, ugyanannak a módosított fragmentumot tartalmazó több összetett dokumentum frissítésének folyamata fájdalmas lesz.
Másodszor, egy fájl beágyazott objektumokkal történő tárolása sokkal több lemezterületet igényel. Link létrehozásakor a dokumentum mérete, az objektum méretétől függetlenül (4 KB, 400 KB vagy 4 MB), csak néhány tíz bájttal növekszik. Amikor egy objektumot implementál, az összes adata átmásolódik egy mesterdokumentumba, így a dokumentum mérete jelentősen megnő. Ezenkívül, amikor adatokat viszünk fel az objektumadatokra, hozzáadhatunk további adatokat, amelyekkel a szervernek műveleteket kell végeznie ezzel az objektummal.
4. Az egyetlen probléma az OLE-val, hogy ez a technológia korlátozza működését egy helyi gép határain. Ezen túlmenően néhány probléma megoldásához szükség lehet a készülékekhez való alkalmazások közelebbi kapcsolatára. Ilyen esetekben a segítség a technológiai ActiveX. Az ActiveX az OLE technológia új képességekén alapul, amelyet az egyik alapvető alapja - az elosztott komponens objektummodell (DCOM) biztosít. Az OLE 2 egy egyszerűbb technológiát használ - a komponens objektummodellt (COM) -, amely összetett dokumentumokat (más objektumokat tartalmazó dokumentumokat) tartalmaz. Az objektumok végrehajtása vagy összekapcsolása az OLE-val pontosan COM-t biztosít, és a DCOM ugyanazokat a műveleteket hajtja végre, de nem csak egy külön számítógépen, hanem a hálózaton belül is. Más szavakkal, az összetett dokumentum különböző számítógépeken létrehozott objektumokból állhat. A vezérlőelem (ActiveX-összetevő) nem létezik az alkalmazáson belül, de külön fájlban található. Ebben az esetben az alkalmazás és az ActiveX összetevő egymással kölcsönhatásba lépnek. A programozó figyeli az összes lehetséges interakciót az összetevő egyes tulajdonságainak beállításával vagy az alkalmazás válaszadásával bizonyos eseményekre.
Egy elosztott komponensmodell (DCOM) létrehozásával a Microsoft Corporation már nagyon hosszú időre tervez. Általánosságban elmondható, hogy a DCOM technológia minden előnye már látható a nevéből. Az "elosztott" azt jelenti, hogy az objektumok nemcsak a helyi számítógépen, hanem a helyi vagy globális hálózaton belül is megtalálhatók. "Komponens" azt jelenti, hogy a programozók teljes mértékben kihasználhatják a Lego konstruktor elvét, kis darabokból, amelyek szinte bármilyen dolgot képesek összegyűjteni. Már megfogalmaztuk az objektum fogalmát. A DCOM objektumok ugyanúgy működnek, mint bármelyik WINDOWS objektum. Bizonyos feladatokat előre meghatározott szabályok szerint végeznek el, és kölcsönhatásba lépnek más objektumokkal a rögzített interfészek használatával. Végül a "modell" szó egy cselekvési útmutatót jelent. Mivel a DCOM meghatározza az adott típusú objektumok létrehozásának és kölcsönhatásának specifikációját, a programozóknak meg kell felelniük a specifikációnak az alkalmazások létrehozásakor.
Végső soron a DCOM technológia lehetővé teszi az elosztott számítások használatát. Nem kell aggódnia, hogy hol vannak az alkalmazás összetevői. A DCOM lehetővé teszi az alkalmazás számára, hogy megtalálja a szükséges összetevőket, és ha szükséges, mindegyiket vagy néhány más számítógépről hajtsa végre. Ebben az esetben a DCOM használata azt jelenti, hogy bármely számítógép időről időre képes elvégezni a szükséges munkát a más számítógépeken futó alkalmazások követelményein.
Mi a különbség a DCOM és az OLE vagy a COM között? A COM és OLE specifikációk leírják az objektumok architektúráját. Különösen azt határozzák meg, hogy az objektumok miként működnek együtt alacsony szinten. A DCOM megoldja ezt a problémát is, ezért nem tér el nagymértékben a COM-tól. A DCOM azonban, ellentétben a COM-vel, olyan szabályokat határoz meg, amelyek egymással kommunikálnak az ügyfél és a szerver között. A COM objektumok az operatív memórián keresztül kommunikálnak egymással. A DCOM objektumok számítógépes hálózaton, modemen vagy ISDN vonalon keresztül kapcsolódhatnak egymáshoz. Így a DCOM a COM kiterjesztése.
A DCOM létrehozása során a Microsoft Corporation egyszerre több kérdést határozott meg. A DCOM-nek folyamatosan kell működnie a hálózati kapcsolatokhoz, ezért módszereket fejlesztettek ki annak érdekében, hogy az objektum állapota helyreálljon, miután a kliens és a szerver közötti kapcsolat megszakadt.
Egy másik probléma az az idő, amikor a kapcsolat létrejött. A helyi számítógépen az objektumok kapcsolata szinte azonnal megtörténik. A számítógépes hálózaton keresztül kölcsönhatásban álló objektumok sok időt vehetnek igénybe az adatcsere befejezéséhez. A probléma megoldásához az objektumok kölcsönhatásának aszinkron módszereit fejlesztették ki. Más szóval a helyi számítógépen végzett munka nem fagy, míg az objektumok a háttérben kommunikálnak egymással. Ez nem jelenti azt, hogy a felhasználó nem észlel késést a távoli objektummal való interakció során. Például, ha a várakozás az objektum adatainak kézhezvételéből ered, amely kinyomtatásra kerül, akkor sokáig eltarthat. A kapcsolat aszinkron természete csak azt jelenti, hogy a válasz várakozásakor a felhasználó más munkát végezhet.
A DCOM másik fontos szempontja a számítógépen telepített objektumok azonosításának módja. Ez nem tehető meg mindaddig, amíg a számítógép semmilyen módon nem ad ki semmilyen szükséges információt. A DCOM lehetővé teszi a Windows rendszerleíró adatbázis részeinek megnyitását más számítógépek számára.