DCOM95 1.3 Poznámky k verzi Poslední úprava: 14. září 1998 Součást DCOM95 poskytuje podporu distribuovaného modelu COM pro systém Microsoft(r) Windows(r) 95. Spojovací protokol DCOM zajišťuje neobsluhovanou podporu pro spolehlivou, bezpečnou a efektivní komunikaci mezi součástmi modelu COM (Component Object Model), například ovládacími prvky ActiveX(r), skripty a aplety Java umístěnými na různých počítačích v síti LAN, v síti WAN nebo v síti Internet. Pomocí součásti DCOM může být vaše aplikace distribuována na místa, která nejlépe vyhovují zákazníkům a vaší aplikaci. Podrobné informace najdete v technickém přehledu DCOM, který je k dispozici na domovské stránce Microsoft COM na adrese http://www.microsoft.com/com/. Obsah ===== I. Nové funkce II. Ošetření chyb III. Známé problémy IV. Rozdíly oproti programu DCOM pro systém Windows NT V. Opakovaná distribuce VI. Podpora a zdroje informací VII. Seznam souborů I. Nové funkce -------------- Nelze nahrazovat součást DCOM95 starší verzí V předchozích verzích programu DCOM95 bylo možné nahradit novou verzi programu DCOM95 jeho starší verzí. V této verzi je však při instalaci prováděna kontrola čísla verze a není povolena instalace starší verze přes verzi novější. Toto chování eliminuje problémy s nekompatibilními verzemi dynamických knihoven (DLL). Podpora procesu monitorování aplikace Visual Studio verze 6.0 Součást DCOM95 v rámci podpory aplikace Visual Studio verze 6.0 zajišťuje monitorování informací, pomocí nichž mohou vývojáři lépe porozumět chování, výkonu a struktuře jejich aplikace. Používáte-li program Visual Studio Analyzer na počítači s operačním systémem Windows 95, měli byste vždy používat tuto verzi programu. Nový adresář vytvořený při instalaci Instalační program vytváří v systémovém adresáři adresář s názvem DCOM95. V tomto adresáři je uložena licenční smlouva a další soubory. Instalační program rovněž v adresáři DCOM95 vytvoří podadresář OLDOLE, do kterého jsou uloženy záložní kopie binárních souborů DCOM95 a OLE. Tyto soubory jsou obnoveny, pokud v budoucnosti program DCOM95 deinstalujete. Služby CIS Služby CIS (COM Internet Services) umožňují klientům a serverům připojení k síti Internet prostřednictvím modelu COM. Služby CIS sestávají z následujících částí: * nový protokol DCOM - Tunneled TCP, * nový typ přezdívky - moniker OBJREF, * nový obslužný program CISCNFG. Pokud chcete zajistit podporu klienta CIS v systému Windows 95, musíte nainstalovat oba programy DCOM95 a DCOMCFG. Poté použijte nástroj CISCNFG, který je instalován při instalaci konfiguračního programu DCOM a provádí registraci klíče definujícího protokol pro vzdálené procesy. Do příkazového řádku zadejte příkaz: ciscnfg Parametr může mít tyto hodnoty: * rpc - použití protokolu RPC, * http - použití protokolu HTTP, * tcp_http - nejprve je proveden pokus o použití protokolu TCP; pokud na serveru vyprší časový limit, je použit protokol HTTP. Příkaz ciscnfg bez argumentů zobrazí informace o použití. Použití protokolu Tunneled TCP nevyžaduje žádné aktualizace SDK. Bylo provedeno několik aktualizací pro monikery OBJREF. CreateObjrefMoniker Vytvoří moniker OBJREF na základě ukazatele na objekt. WINOLEAPI CreateObjrefMoniker( LPUNKNOWN pUnk, //Ukazatel na objekt LPMONIKER *ppMk //Uložení adresy ukazatele do monikeru OBJREF ); Parametry pUnk Ukazatel na rozhraní IUnknown objektu, který má moniker reprezentovat. ppMk Adresa ukazatele na rozhraní IMoniker vytvořeného monikeru OBJREF. Návratové hodnoty Tato funkce podporuje standardní návratové hodnoty E_OUTOFMEMORY a E_UNEXPECTED. Dále podporuje hodnotu: S_OK Moniker typu OBJREF byl úspěšně vytvořen. Poznámky Klienti použitím monikerů OBJREF získávají zařazený ukazatel na spuštěný objekt v adresovém prostoru serveru. Server standardně voláním funkce CreateObjrefMoniker vytvoří moniker typu OBJREF, poté volá funkci IMoniker::GetDisplayName a nakonec moniker uvolní. Zobrazený název monikeru OBJREF má tvar: OBJREF:nnnnnnnn kde nnnnnnnn je generovaný kód typu long (64 bitů), který zahrnuje umístění počítače, koncový bod procesu a identifikátor rozhraní (IPID) spuštěného objektu. Zobrazený název lze v textovém tvaru přenést na klienta. Můžete jej například umístit na stránku HTML, kterou klient stáhne. Klient může předat zobrazený název funkci MkParseDisplayName, která na jeho základě vytvoří moniker OBJREF. Voláním metody IMoniker::BindToObject monikeru pak získáte zařazený ukazatel na instanci spuštěnou na serveru. Součást COM na straně serveru obsažená na aktivní stránce serveru může například vytvořit moniker OBJREF, získat příslušný zobrazený název a zapsat zobrazený název do výstupu HTML, který je odeslán klientskému prohlížeči. Skript, který je spuštěn na klientské stanici, může prostřednictvím zobrazeného názvu přistupovat k samotnému spuštěnému objektu. Klientský skript Visual Basic může například uložit zobrazený název do proměnné s názvem strMyName a zahrnovat následující řádek: objMyInstance = GetObject(strMyName) Skriptovací jádro provede interně volání funkcí MkParseDisplayName a IMoniker::BindToObject. Skript pak může prostřednictvím proměnné objMyInstance odkazovat přímo na spuštěný objekt. Pokud spuštěný objekt používá statické identifikátory IPID a serverový proces je vždy spuštěn na stejném počítači v dobře známém koncovém bodu, bude zobrazený název monikeru OBJREF vždy stejný. V tomto případě server může uložit zobrazený název a nemusí jej při každém požadavku na objekt znovu počítat. IMoniker - implementace monikeru OBJREF Moniker OBJREF představuje odkaz na instanci objektu, která je spuštěna na vněprocesovém serveru, a to lokálně nebo vzdáleně. Moniker identifikuje instanci objektu a počítač, na kterém je objekt spuštěn. Moniker typu OBJREF se v mnoha ohledech podobá monikeru typu ukazatel s tím rozdílem, že spuštěný objekt je vněprocesový. Klient může volat metodu IMoniker::BindToObject monikeru OBJREF a pomocí získaného ukazatele přistupovat ke spuštěnému objektu bez ohledu na jeho umístění. Důležitou odlišností od monikeru typu ukazatel je také fakt, že zobrazený název monikeru typu OBJREF lze vložit na stránku HTML a spuštěný objekt představovaný monikerem může být svázán s klientským skriptem, apletem nebo ovládacím prvkem ActiveX. Příklady použití Moniker OBJREF se primárně používá při získání přístupu k instanci spuštěného objektu v síti Internet. Aktivní serverová stránka nebo jiný prostředek generování dynamického obsahu HTML vloží zobrazený název monikeru OBJREF jako parametr do apletu nebo do ovládacího prvku ActiveX. Kód apletu nebo ovládacího prvku vyvoláním funkce CreateObjrefMoniker vytvoří na základě zobrazeného názvu moniker OBJREF, který poté vyvolá funkci IMoniker::BindToObject. Tím je získán přístup k instanci spuštěného objektu. Aktivní serverová stránka poté zařadí ukazatel na spuštěný objekt zpátky klientovi stránky. Poznámky Metoda IMoniker::BindToObject. Pro monikery OBJREF musí mít parametr pmkToLeft hodnotu NULL. Vzhledem k tomu, že moniker OBJREF představuje spuštěný objekt, neprovádí se žádná aktivace. Pokud objekt, který moniker reprezentuje, není spuštěn, funkce BindToObject selže a vrátí hodnotu E_UNEXPECTED. Metoda IMoniker::BindToStorage. Tato metoda obsahuje zařazený ukazatel na vyžadované rozhraní v paměťovém prostoru, který obsahuje spuštěný objekt. Vzhledem k tomu, že moniker typu OBJREF představuje spuštěný objekt, neprovádí se žádná aktivace. Pokud objekt, který moniker reprezentuje, není spuštěn, funkce BindToStorage selže a vrátí hodnotu E_UNEXPECTED. Metoda IMoniker::Reduce. Tato metoda vrací hodnotu MK_S_REDUCED_TO_SELF a předává ji zpátky stejnému monikeru. Metoda IMoniker::ComposeWith. Je-li parametr pmkRight antimonikerem, vrácený moniker má hodnotu NULL. Představuje-li parametr pmkRight složenou strukturu, jejíž levá součást je antimoniker, bude mít vrácený moniker složenou strukturu, z níž je odebrán levý antimoniker. Pokud není parametr pmkRight antimonikerem ani složeným monikerem, jehož nejlevější součást je antimoniker, pak metoda ověřuje parametr fOnlyIfNotGeneric. Pokud je nastaven na hodnotu FALSE, metoda sloučí oba monikery do obecné složené struktury. Pokud má parametr hodnotu TRUE, metoda nastaví ukazatel *ppmkComposite na hodnotu NULL a vrátí chybový kód MK_E_NEEDGENERIC. Metoda IMoniker::Enum. Tato metoda vrací hodnotu S_OK a nastavuje ukazatel ppenumMoniker na hodnotu NULL. Metoda IMoniker::IsEqual. Tato metoda vrací hodnotu S_OK v případě, že ukazatel *pmkOther je monikerem OBJREF a cesty pro oba monikery jsou identické (při porovnání bez rozlišení malých a velkých písmen). V opačném případě vrací metoda hodnotu S_FALSE. Metoda IMoniker::Hash. Tato metoda vypočítá hašovací hodnotu pro moniker. Metoda IMoniker::IsRunning. Vzhledem k tomu, že monikery typu OBJREF představují instance spuštěných objektů, vrací tato metoda hodnotu TRUE, pokud se vzhledem k předchozí chybě volání nezjistilo, že objekt již není spuštěn. Metoda ignoruje parametr pmkToLeft. Metoda IMoniker::GetTimeOfLastChange. Tato metoda vrací hodnotu E_NOTIMPL. Metoda IMoniker::Inverse. Tato metoda vrací antimoniker (například výsledky volání funkce CreateAntiMoniker). Metoda IMoniker::CommonPrefixWith. Pokud si jsou dva monikery rovny, metoda vrací hodnotu MK_S_US a nastavuje ukazatel *ppmkPrefix na hodnotu NULL. Pokud druhý moniker není monikerem OBJREF, metoda předá oba monikery funkci MonikerCommonPrefixWith. Tato funkce správně ošetří případ, kdy druhý moniker představuje složenou strukturu. Pokud neexistuje společná předpona, metoda vrací chybový kód MK_E_. Metoda IMoniker::RelativePathTo. Tato metoda vrací hodnotu E_NOTIMPL. Metoda IMoniker::GetDisplayName. Tato metoda obsahuje zobrazený název pro moniker typu OBJREF. Zobrazený název je 64bitový kód, který obsahuje umístění počítače, koncový bod zpracování a identifikátor rozhraní (IPID) spuštěného objektu. Z důvodu další kompatibility smějí být v zobrazeném jménu použity pouze znaky, které lze uvést také v adrese URL. Metoda IMoniker::ParseDisplayName. Je-li parametr pmkToLeft nastaven na hodnotu NULL, vrací metoda hodnotu MK_E_SYNTAX. Metoda IMoniker::IsSystemMoniker. Tato metoda vrací hodnotu S_OK a předává zprátky parametr MKSYS_OBJREFMONIKER. Podpora datových typů aplikace Visual Basic verze 6.0 Aplikace Visual Basic(r) verze 6.0 umožňuje, aby proměnné typu Variant obsahovaly uživatelem definované datové struktury. Poslední verze programu DCOM95 podporuje vzdálené použití těchto proměnných. II. Ošetření chyb ----------------- Chybová podmínka při uvolňování více modulů Při současném uvolňování několika modulů mohla v předchozích verzích programu DCOM95 vzniknout chybová podmínka. V závislosti na pořadí přenášení modulů mohlo dojít k narušení přístupu. Tento problém je v nové verzi programu DCOM95 vyřešen. Nereagující počítač při vyjednávání protokolů RPC Předchozí verze programu DCOM95 během vyjednávání protokolů nezpracovávaly systémové zprávy. V některých případech docházelo k tomu, že pokud uživatel spustil jinou aplikaci během doby vyjednávání protokolů RPC, počítač nereagoval. Po 30 sekundách bylo zpracování systémových zpráv obnoveno. Uvedené chování bylo v poslední verzi programu DCOM95 změněno - aplikace tedy lze bez problémů spouštět i při vyjednávání protokolů RPC. Nereagující počítač při spuštění nové aplikace Modul RPC vytvoří skryté okno v apartmánu MTA (Multiple- Threaded Apartment), který nezpracovává systémové zprávy specifické pro program DCOM. Pokud uživatel spustí novou aplikaci na klientském počítači, systém Windows odešle zprávu všem ostatním manipulačním rutinám oken, uvědomí je o této události a očekává odezvu. V předchozích verzích programu DCOM95 skryté okno RPC v některých případech neodpovědělo a systém Windows přestal reagovat. V této verzi programu DCOM95 je tento problém ošetřen a okno RPC již nemůže způsobit, že počítač při spuštění nové aplikace přestane reagovat. Poškození haldy IP adres Pokud jste provozovali program DCOM95 na počítači s několika IP adresami, mohlo v některých případech dojít k přeplnění vyrovnávací paměti IP adres a následně k poškození haldy. Tento problém je v nové verzi programu DCOM95 vyřešen. Použití pouze první IP adresy Pokud jste provozovali předchozí verzi programu DCOM95 na počítači se dvěma adaptérovými kartami (a tedy se dvěma IP adresami přiřazenými těmto kartám), program DCOM95 používal pouze jeden síťový adaptér. V této verzi programu DCOM95 se používá první karta a pokud tato karta nefunguje, je použita druhá karta. Protokol RPC - pokus o použití více IP adres Pokud při volání vzdálené procedury na počítači s několika IP adresami dojde k selhání první adresy, je pokus zopakován s další adresou. Monikery souborů - podpora rozšířené syntaxe cesty Monikery souborů mohou být nyní vytvořeny na základě argumentů ve tvaru , například "C:\bug\bug\..\..\foo.jpg". V programu DCOM95 1.1 byly povoleny pouze relativní cesty (například "..\..\foo.jpg") nebo absolutní cesty (například "C:\foo.jpg"). Závažná chyba při uvolnění knihovny Oleaut32.dll V předchozích verzích programu DCOM95 docházelo při uvolnění knihovny Oleaut32.dll před voláním funkce CoUninitialize k závažné chybě. K chybě docházelo nejčastěji při vytvoření ovládacího prvku v aplikaci Visual Basic, ke kterému byla staticky připojena knihovna Oleaut32.dll, a při následném uvolnění ovládacího prvku před voláním funkceCoUninitialize. V nové verzi DCOM95 je tento případ ošetřen a závažná chyba se již neobjevuje. Zařazení a vyřazení datových typů aplikace Visual Basic Zařazení a vyřazení některých datových typů v aplikaci Visual Basic bylo opraveno. V této verzi jsou povoleny parametry typu matice s velikostí větší než 64 kB. Správně jsou také zařazovány (vyřazovány) struktury definované použitím aliasů na typ. Odstranění atomů ve funkci OleUninitialize Tato chyba se vyskytovala v aplikacích, které obsahovaly několik volání funkce OleInitialize a OleUninitialize. Technologie OLE při inicializaci přidá řadu atomů pro protokol DDE RPC. Pokud atomy již byly přidány jiným procesem, nejsou přidány znovu. Při deinstalaci však byly atomy vždy odstraněny a manipulátory nebyly nastaveny na hodnotu NULL. Proto při dalším volání funkce OleInitialize ještě existovaly původní manipulátory, přestože atomy již byly odstraněny, a technologie OLE je tudíž nepřidala. Toto chování mělo za následek, že všechny atomy OLE se po několika voláních funkcí OleInitialize a OleUninitialize staly neplatnými. V poslední verzi programu DCOM95 je tento problém odstraněn. Správné ukončení serverů ADO Objekty ADO (Active Data Objects) používají monikery typu ukazatel ke spuštění procesu na serveru. Předchozí verze programu DCOM95 obsahovaly chybu týkající se počítání odkazů na monikery typu ukazatel. Při vytvoření byl pro tyto monikery nastaven čítač na hodnotu 1, nikoli na hodnotu 0. Proto počet odkazů na moniker typu ukazatel nikdy nebyl nulový a nemohlo tedy dojít k uvolnění monikeru. Důsledkem bylo, že servery ADO nebyly nikdy ukončeny a to ani v případě, že byl uvolněn poslední ukazatel, který na ně odkazoval. V poslední verzi programu DCOM95 je tento problém odstraněn. Funkce CoCreateInstance s vlastním názvem DNS V předchozích verzích programu DCOM95 volání funkce CoCreateInstance s úplným názvem lokálního počítače nefungovalo. Tato chyba byla v poslední verzi programu DCOM95 odstraněna a funkce CoCreateInstance nyní správně vytváří instance lokálního počítače. Zdlouhavé potvrzení v kořenové paměti pro rozsáhlý složený soubor V předchozích verzích programu DCOM95 se čas potvrzení pro kořenovou paměť otevřenou v režimu STGM_TRANSACTED velmi prodlužoval, pokud velikost složeného souboru narůstala (například na 400 MB). Tento nárůst již nezpůsobuje problémy, protože byly zvýšeny horní meze interní tabulky stránek. Export objektů ze znovu vytvořeného apartmánu MTA V předchozích verzích programu DCOM95 server nemohl exportovat objekt z apartmánu MTA (Multi-Threaded Apartment), pokud se nejednalo o první vytvoření apartmánu MTA v procesu. Tento problém byl odstraněn. Pokud v této verzi server vytvoří apartmán MTA, zruší jej a následně jej znovu vytvoří, lze objekty z apartmánu MTA exportovat. Násobné instance souborů EXE aplikace Visual Basic 4 Pokud v programu DCOM95 verze 1.1 spustíte více instancí stejného spustitelného souboru aplikace Visual Basic 4 a ukončíte je v jakémkoli pořadí s výjimkou způsobu LIFO (Last-In First-Out), poslední soubor exe přestane reagovat. Tento problém se týkal také elektronických formulářů v programu Microsoft Exchange. V poslední verzi programu DCOM95 je tento problém odstraněn. Spustitelné soubory aplikace Visual Basic 4 teď můžete zavírat v libovolném pořadí. Rozšířené znaky v názvech souborů aplikace Visual Basic Pokud jste pro pojmenování modulu nebo třídy aplikace Visual Basic použili rozšířené znaky daného jazyka, mohlo se stát, že soubor nebylo možné otevřít na počítačích nakonfigurovaných pro jinou lokalitu. Tento problém je odstraněn. III. Známé problémy ------------------- Corel WordPerfect Suite 7: Instalace způsobuje chybu neplatné stránky Pokud instalujete sadu Corel WordPerfect Suite 7 v systému Windows 95 se spuštěným programem DCOM95, může při instalaci dojít k chybě neplatné stránky v souboru PfOd70.pfc. Pokud dojde k této chybě, stačí zavřít dialogové okno s chybou. Instalace bude dále pokračovat. Microsoft Access95: Replikace databází nefunguje Pokud se pokusíte replikovat databázi Access pomocí aplikace Microsoft Access 95 na počítači s instalovaným programem DCOM95, může se zobrazit chybová zpráva tohoto typu: Aplikace Microsoft Access nemůže tuto operaci dokončit, protože nelze najít nebo inicializovat dynamickou knihovnu Msjtrclr. Jedná se o problém aplikace Microsoft Access 95. Uvedený problém můžete obejít tak, že napíšete program, který provede replikaci pomocí objektového modelu Access, nikoli pomocí standardního replikačního nástroje, nebo pokud použijete replikaci pomocí kufříku. V aplikaci Microsoft Access 97 replikace funguje bez problémů. WordPerfect Pokud máte dokument programu WordPerfect obsahující vloženou tabulku Corel a tabulka obsahuje další vložený objekt (například bitovou mapu), může se zobrazit dialogové okno s varováním, že při zavření nejvíce vnořeného objektu dojde ke ztrátě síťového spojení. Toto varování se může objevit čtyřikrát nebo pětkrát. Nevšímejte si ho. Dialogové okno s varováním zavřete a pokračujte v práci. Klienti MTA (Multiple-threaded apartment), kteří používají převodní rutiny BSTR, mohou zablokovat zprávy DDE Automatické převodní rutiny BSTR (například funkce BstrFromR4) vytvářejí skrytá okna, které zajišťují převod typů. Tato okna neobsluhují systémovou frontu zpráv. Je-li takové okno vytvořeno v klientovi MTA, může dojít k zablokování zpráv DDE. Proces klienta nemá žádný závazek vůči obsluhování fronty zpráv v programovacím modelu MTA. Pokud tento případ nastane, okno nejvyšší úrovně zablokuje globální plošné zprávy. Tento problém lze obejít dvěma způsoby. Převodní funkci BSTR lze vyvolat v rámci klienta STA (Single-Threaded Apartment), nebo lze přinutit proces MTA klienta, aby se choval jako proces STA. (Proces STA musí obsluhovat systémovou frontu zpráv.) Je-li proces blokován na manipulátoru win32, musí volat funkci MsgWaitForMultipleObjects, která průběžně zpracovává zprávy systému Windows. Cesty ke knihovnám DLL delší než 127 znaků generují chybu Pokud registrujete knihovnu DLL s cestou delší než 127 znaků, registrace bude úspěšná, ale funkce CoCreateInstance nebo CoGetClassObject vrátí chybu (REGDB_E_CLASSNOTREG) při pokusu o přístup k objektu podporovanému danou knihovnou DLL. IV. Rozdíly oproti programu DCOM pro systém Windows NT ------------------------------------------------------ Zabezpečení v programu DCOM95 Základní funkce a aplikační programové rozhraní (API) programu DCOM95 je pro systémy Windows 95a Windows NT verze 4.0/5.0 identické. Některé vlastnosti týkající se zabezpečení jsou však odlišné, protože oba systémy mají různou infrastrukturu zabezpečení. Doporučuje se použít výchozí nastavení zabezpečení daného systému. Na sdílených souborových systémech je nezbytné povolit zabezpečení "na úrovni uživatele" (viz níže). K dispozici jsou následující služby, kterými můžete potlačit výchozí zabezpečení: * CoInitializeSecurity * CoQueryAuthenticationService * CoQueryProxyBlanket * CoSetProxyBlanket * CoQueryClientBlanket * IClientSecurity - rozhraní * IServerSecurity - rozhraní Některé funkce, které jsou součástí programu DCOM pro Windows NT, však nebudou k dispozici v systému Windows 95 z důvodu rozdílů v infrastruktuře zabezpečení v systému Windows 95. Počítat byste měli zejména s nedostatečnými funkcemi zabezpečení v rozhraní API Win32, jako je například možnost vytvoření seznamů přístupových práv (ACL), s funkcí AccessCheck a s nedostatečným kontextem zabezpečení přidruženým k tokenu procesu a podprocesu. Systém Windows 95 tyto funkce nebo konstrukce ve výchozím stavu nepodporuje. Z tohoto důvodu program DCOM95 nebude podporovat změnu personifikace (přesněji pomocné funkce CoImpersonateClient a CoRevertToSelf v rozhraní IServerSecurity), která je založena na zabezpečení procesu a podprocesu v systému Windows NT 4.0. Změna personifikace se obvykle používá pro automatické řízení přístupu k systémovým prostředkům s omezenými přístupovými právy (například souborový systém), k dalším procesům a do sítě. Přístup k těmto prostředkům nelze v systému Windows 95 omezit. Program DCOM95 nicméně nabízí programátorům různé pomocné objekty, které zajišťují seznamy ACL a kontrolu přístupových funkcí, jimiž lze explicitně řídit přístup vzdálených klientů na oba systémy a uživatelem definované prostředky nebo data. Tyto pomocné objekty jsou poskytnuty v systémovém objektu CLSID_DCOMAccessControl, který implementuje rozhraní IAccessControl. Rozhraní IAccessControl, kterým lze programově ovládat oprávnění zabezpečení, byste měli použít ve všech případech, kdy budete uvažovat o přenositelnosti mezi systémy Windows 95/98 a Windows NT. Objekt CLSID_DCOMAccessControl je k dispozici ve všech verzích programu DCOM95 a v systému Windows NT verze 4.0 SP2 nebo vyšších. Další informace o objektu IAccessControl najdete v dokumentaci SDK dodávané k operačnímu systému. Zabezpečení spuštění a přístupu V programu DCOM95 není podporována funkce, která by určovala, kdo může spustit kód serverové třídy, protože spouštění serverů není podporováno. Aby se vzdálení klienti mohli připojovat k serverům či třídám a využívat jejich služby, musejí být tyto servery a služby již spuštěny. Program DCOM95 podporuje možnost připojení ke třídám a k serverům, které jsou již spuštěny. Zabezpečení přístupu je podporováno prostřednictvím klíče \APPID\{.}\AccessPermissions v registru a lze jej upravit pomocí nástroje DCOMCNFG nebo při instalaci či nastavení serverového kódu. Neověření uživatelé budou moci používat servery pouze v případě, že nakonfigurujete třídu tak, aby podporovala neověřená spojení (prostřednictvím statických konfiguračních nástrojů nebo dynamicky pomocí funkce CoInitializeSecurity). Můžete také sestavit seznam přístupových práv a definovat, kteří uživatelé či skupiny mohou přistupovat k určitým službám. Úrovně ověření Klienti DCOM95 mohou provádět volání DCOM prostřednictvím jakékoli úrovně ověření. Servery nebo klienti DCOM95, kteří přijímají zpětná volání, mohou přijmout volání DCOM pouze pomocí úrovně ověření RPC_C_AUTHN_LEVEL_NONE nebo RPC_C_AUTHN_LEVEL_CONNECT. Přenos Program DCOM95 podporuje pouze připojení typu TCP. Pokud nemáte nainstalovaný protokol TCP/IP, program DCOM95 nebude podporovat komunikaci mezi počítači. Nastavení registru Program DCOM95 instaluje do složky HKEY_LOCAL_MACHINE\Software\Microsoft\OLE registru tyto klíče: EnableDCOM (výchozí hodnota = "Y"). Povoluje použití programu DCOM na daném počítači. Pokud klíč nastavíte na hodnotu "N", počítač nemůže navazovat připojení nebo aktivovat objekty na vzdálených počítačích a vzdálené počítače neumožňují připojení k objektům na lokálním počítači. Nastavení klíče na hodnotu "Y" umožňuje klientské připojení ke vzdáleným objektům (pokud platí EnableRemoteConnect='N', viz níže) nebo plnohodnotné připojení typu klient/server (pokud platí EnableRemoteConnect='Y', viz níže). EnableRemoteConnect (výchozí hodnota = "N"). Povoluje serverům COM podporovat vzdálené klienty. Je-li klíč nastaven na hodnotu "Y", odkazy na rozhraní na lokálních objektech lze předat vzdáleným klientům a vzdálení klienti se mohou připojovat ke spuštěným objektům. Je-li klíč nastaven na hodnotu "N", daný počítač se může připojovat ke vzdáleným objektům, ale nemůže fungovat jako server - nemůže se připojovat ke spuštěným objektům. Na adrese HKEY_CLASSES_ROOT\CLSID v registru navíc najdete následující klíč: {bdc67890-4fc0-11d0-a805-00aa006d2ea4}\InstalledVersion. Obsahuje číslo verze programu DCOM95 ve formátu "a,b,c,d". Tato hodnota může být použita při stahování součásti po síti Internet k určení, zda je program DCOM95 instalován. Hodnota je do registru vložena při instalaci a neměli byste jí měnit. Použití systému Windows 95 jako hostitele vzdáleného serveru Systém Windows 95 může být hostitelem vzdáleného serveru s následujícími připomínkami: * Není k dispozici funkce spuštění. Klient se může připojit pouze tehdy, je-li spuštěn příslušný serverový proces. * Pokud jsou potřeba zabezpečená spojení, server (a v případě zpětných volání také klient) musí mít nastaveno řízení přístupu na úrovni uživatele s nastaveným názvem zprostředkovatele zabezpečení. * Klíč "EnableRemoteConnect" registru musí být nastaven na hodnotu "Y". Program DCOM95 byl nejvíce testován použitím zprostředkovatele doménového zabezpečení v systému Windows NT. Při použití jiných zprostředkovatelů zabezpečení může docházet k chybám. Chcete-li nastavit řízení přístupu na úrovni uživatele, musíte nainstalovat soubor Filesec.vxd. Tento soubor je obecně instalován v systémech Windows 95 při instalaci sdílení souborů a tiskových prostředků. Chcete-li aktivovat řízení přístupu na úrovni uživatele, otevřete dialogové okno Síť z ovládacích panelů, klepněte na kartu Řízení přístupu a vyberte volbu Individuální řízení přístupu a zadejte název domény zabezpečení. Toto nastavení může ovlivnit způsob aktuálního sdílení adresářů v síti z vašeho počítače. Podrobnosti najdete v dokumentaci online. Pokud v dialogovém okně pro konfigurace sítě chybí panel Řízení přístupu, musíte nejprve nainstalovat službu síťového klienta. Informace o instalaci síťového klienta zobrazíte, pokud v rejstříku nápovědy online zadáte heslo klienti - nastavování. V. Opakovaná distribuce ----------------------- Informace o další distribuci programu DCOM95 najdete v příslušných pokynech, které jsou uvedeny v licenční smlouvě pro koncové uživatele (soubor license.txt). VI. Podpora a zdroje informací ------------------------------ Průvodce odbornou pomocí společnosti Microsoft Pokud máte technické dotazy týkající se systému Microsoft® Windows 98, použijte tuto příručku Začínáme s aplikací Microsoft® Windows 98 nebo nápovědu. Budete-li mít dotazy i nadále, nabízí vám společnost Microsoft odbornou pomoc a služby sahající od nástrojů vlastní pomoci až po přímou podporu poskytovanou pracovníkem odborné pomoci společnosti Microsoft. Nástroje vlastní pomoci Odborná pomoc online společnosti Microsoft: Tento nový server využívá převratných technologií společnosti Microsoft k tomu, abyste měli přístup k nejdůležitějším odborným informacím a prostředkům, které vám poskytnou odpověď na vaše dotazy. Pomocí poradců při potížích snadno určíte problémy a naleznete odpovědi na své otázky. Můžete si také vybrat z více než 75 000 odborných článků, pomůcek pro programování nebo nejčastěji kladených otázek v databázi Microsoft Knowledge Base. Navštivte server http://support.microsoft.com/support/ a přesvědčte se, jak snadné je získat potřebné informace. (V České republice můžete také navštívit místní server na adrese http://support.microsoft.cz/, na Slovensku na adrese http://support.microsoft.sk/). Přímá podpora poskytovaná pracovníkem odborné pomoci společnosti Microsoft Standardní bezplatná odborná pomoc: Budete-li přesto potřebovat pomoc při řešení odborných problémů, nabízí vám společnost Microsoft pro maloobchodní verze* tohoto produktu následující standardní bezplatnou odbornou pomoc: Neomezená bezplatná odborná pomoc týkající se použitelnosti produktu včetně funkcí, příkazů nabídek, formátování, instalace a dalších otázek spojených s uživatelským rozhraním. V České republice získáte standardní bezplatnou pomoc na telefonním čísle (02) 21 50 32 22 od pondělí do pátku (mimo svátky) mezi 9 a 17 hod. Na Slovensku volejte ve stejném čase na číslo (07) 67 29 62 96. * Pokud byl produkt společnosti Microsoft předem nainstalován nebo dodán již s počítačem, je za poskytnutí odborné pomoci odpovědný výrobce vašeho počítače. V takovém případě se obraťte na výrobce nebo na zdroj, ze kterého jste produkt společnosti Microsoft získali. Smlouva odborné pomoci Priority Support: Pokud předpokládáte, že budete požadovat větší rozsah pomoci nebo potřebujete mít k pracovníkům odborné pomoci společnosti Microsoft přednostní přístup, poskytne vám podrobné informace zastoupení společnosti Microsoft v České republice na telefonním čísle (02) 611 97 111, od pondělí do pátku (mimo svátky) od 8:30 do 18:00 hod. Odesílání dotazů prostřednictvím sítě Internet: V České republice a na Slovensku můžete dotazy na odbornou pomoc Priority Support (tato služba je placená) odesílat prostřednictvím internetové služby Web Response. Bližší informace vám poskytne odborná pomoc online společnosti Microsoft na adrese http://www.microsoft.cz/support/. Další možnosti podpory Programy a služby odborné pomoci: Odborná pomoc společnosti Microsoft dále nabízí profesionální programy a služby odborné pomoci pro střední a velké organizace, které požadují více než pouhé řešení standardních potíží. Další informace získáte v části Odborná pomoc souboru nápovědy nebo na serveru Odborná pomoc online společnosti Microsoft na adrese http://www.microsoft.cz/support/. Celosvětová odborná pomoc společnosti Microsoft: Nejste-li na území České republiky nebo Slovenska a máte dotaz týkající se produktu společnosti Microsoft, proveďte nejprve následující: Ověřte si informace v tomto souboru nápovědy nebo v příručce k produktu. Pročtěte si soubory readme dodané společně s disky k produktu. Tyto soubory poskytují obecné informace, které byly shromážděny krátce před uvedením produktu na trh. Vyhledejte podporu online na adrese http://support.microsoft.com/support/. Nemůžete-li nalézt řešení, poskytne vám místní pobočka společnosti Microsoft informace o získání podpory pro produkt. Služby odborné pomoci společnosti Microsoft se řídí momentálně aktuálními cenami, termíny a podmínkami, které se mohou změnit bez předchozího upozornění. VII. Seznam souborů ------------------- Tato tabulka obsahuje seznam čísel verzí souborů distribuovaných s programem DCOM95. oleaut32.dll 2.40.4275 secur32.dll 4.10.1999 compobj.dll 2.3.2 ole2.dll 2.3.2 ole32.dll 4.71.2900 olecnv32.dll 4.71.2900 olethk32.dll 4.71.2900 rpcltc1.dll 4.71.2900 rpcltc5.dll 4.71.2900 rpcltccm.dll 4.71.2900 rpclts5.dll 4.71.2900 rpcltscm.dll 4.71.2900 rpcns4.dll 4.71.2900 rpcrt4.dll 4.71.2900 rpcss.exe 4.71.2900 storage.dll 2.3.2 stdole2.tlb 2.40.4275 stdole32.tlb 2.1 imagehlp.dll 4.00 dllhost.exe 4.71.2900 comcat.dll 5.0 iprop.dll 4.00 rpcmqcl.dll 4.71.2900 rpcmqsvr.dll 4.71.2900 olepro32.dll 5.0.4275 asycfilt.dll 2.40.4275 dcom2w98.dll 2.10.35.35 Tato tabulka obsahuje seznam čísel verzí souborů distribuovaných s programem DCM95CFG. dcomcnfg.exe 5.00.1603.0 ciscnfg.exe 4.71.2618