A globális módon kiszolgált, egymás melletti kódösszeállításokat kikerülő alkalmazásokat veszélyeztethetik a Microsoft szoftverfrissítései által elhárított hibák

A cikk fordítása A cikk fordítása
Cikk azonosítója: 835322 - A cikkben érintett termékek listájának megtekintése.
Az összes kibontása | Az összes összecsukása

BEVEZETÉS

A Microsoft Windows Server 2003 rendszert futtató számítógépek rendszergazdái bármilyen globális módon frissített, egymás melletti kódösszeállításokat kikerülhetnek az adott alkalmazás vonatkozásában, de a Microsoft Windows XP rendszert futtató számítógépek szoftverfejlesztői és rendszergazdái is megtehetik ugyanezt. A kikerülési szolgáltatás mindazonáltal sebezhetővé teheti a számítógépet az olyan hibákkal szemben, amelyeket egyébként egy globális Microsoft-szoftverfrissítéssel meg lehetne szüntetni, ezért feltétlenül ajánlott, hogy se a szoftverfejlesztők, se a rendszergazdák ne használják ezt a szolgáltatást.

Nem javasolt olyan egymás mellett elhelyezkedő kódösszeállítások használata, amelyek a Windows rendszerbeli DLL- és COM-átirányítási technikával vannak egyesítve. Erről a cikk „További információk” című részében olvashat bővebben.

További információ

Az egymás mellett elhelyezkedő kódösszeállítások olyan erőforrásokat tartalmaznak, amelyek legalább egy DLL-fájlt, windows osztályokat, COM-kiszolgálókat, típustárakat vagy kapcsolatokat foglalnak magukban. Ezeket az erőforrásokat minden esetben együtt nyújtja a rendszer az alkalmazásoknak. Az egymás melletti kódösszeállításokat olyan XML alapú alkalmazás-jegyzékfájlok jelölhetik ki, amelyek a következő helyek bármelyikén létezhetnek:
  • Az alkalmazás végrehajtható fájljának egyik erőforrása
  • A fájl végrehajtható fájlját tároló mappával megegyező mappába telepített, .exe.manifest kiterjesztésű fájl
  • A Microsoft alkalmazás kompatibilitási adatbázisának valamely beállítása – ha egy adott alkalmazás-jegyzékfájlt a Microsoft alkalmazáskompatibilitási adatbázisa biztosít, a jegyzékfájl elsőbbséget élvez az alkalmazás által nyújtottal szemben.
A központi telepítést követően a szoftverfejlesztők és a rendszergazdák alkalmazáskonfigurációnként, alkalmazáskonfigurációs fájl segítségével frissíthetik a kódösszeállítások beállításait. Az alkalmazáskonfigurációs fájlok kiterjesztése .exe.config, és ugyanabban a mappában találhatók, mint amelyikben az alkalmazás végrehajtható fájlja. Az alkalmazáskonfigurációs fájlokkal elérhető, hogy egy adott alkalmazást átirányítva az ne a szóban forgó, egymás melletti kódösszeállítás valamely verzióját, hanem ugyanannak egy másik verzióját használja, és ehhez az alkalmazás újrafordítására sincs szükség. A rendszergazda vagy a fejlesztő például úgy frissíthet egy önálló alkalmazást, hogy az az egymás melletti kódösszeállítás olyan újabb verzióját használja, amelynek használatát nem tették kötelezővé minden alkalmazásnak közzétételi házirend használatával. Az újabb kódösszeállítás az adott alkalmazást tekintve ezt követően elsőbbséget élvez régebbi verzióival szemben.

Mindezeken túlmenően a Windows Server 2003 rendszerű számítógépek rendszergazdái, illetve a Windows XP rendszert futtató számítógépek rendszergazdái és szoftverfejlesztői kikerülhetik az összes globálisan frissített, adott alkalmazásra vonatkozó egymás melletti kódösszeállítást, így nem szükséges eltávolítaniuk az összes alkalmazáshoz definiált globálisan frissített összeállítást. Ehhez úgy frissíthetik az alkalmazáskonfigurációs fájlt, hogy az tartalmazza a <publisherPolicy apply="no"/> összetevőt.

Ha tudni szeretné, hogy Windows XP rendszerű számítógépének valamely alkalmazáskonfigurációs fájlját használja-e más alkalmazás globálisan frissített, egymás melletti kódösszeállítások kikerülésére, keresse meg a <publisherPolicy apply="no"/> összetevőt valamely .config kiterjesztésű olyan fájlban, amelynek neve megegyezik az alkalmazás végrehajtható fájljának nevével. Az Application.exe.config fájl <publisherPolicy apply="no"/> elemének megkeresésével például azt határozhatja meg, hogy a rendszer kikerül-e globálisan frissített, egymás melletti kódösszeállításokat olyan alkalmazás esetén, amelynek végrehajtható fájlja az Application.exe nevet viseli. Az Application.exe.config nevű fájl az alkalmazás alkalmazás-jegyzékfájljával megegyező helyen található.

Ezzel a szolgáltatással a szoftverfejlesztők és a rendszergazdák akár egyesével is letilthatják a Microsoft által bizonyos alkalmazásokhoz kiadott, ám a telepítéskor nem működő szoftverfrissítéseket. (Ennek köszönhetően nincs szükség arra, hogy valamennyi alkalmazásra nézve eltávolítsák a kérdéses szoftverfrissítést.) Ha egy adott alkalmazásban azonban ilyen kikerülés történik, az alkalmazás sebezhetővé válik a szoftverfrissítés által javított hibákkal szemben.

Megjegyzés: Windows Server 2003 rendszerű számítógépeken a kikerülés csak abban az esetben lehetséges, ha tartozik hozzá bejegyzés a Microsoft alkalmazáskompatibilitási adatbázisában. Ezt a beállítást csak rendszergazdák, illetve szoftverfrissítésen keresztül a Microsoft hozhatja létre.

A globális frissítés átugrásának léteznek más, az alkalmazás szerzője vagy az alkalmazás könyvtárához teljes hozzáféréssel rendelkezők számára elérhető módjai is.

Figyelmeztetés a Windows rendszerbeli DLL- és COM-átirányítási technika használatával kapcsolatban

E technikához rendszerint egy .local kiterjesztésű fájlnak az alkalmazással együtt történő telepítésére van szükség. Ez a követelmény az alkalmazáskompatibilitási problémák elkerülésére szolgál.

Megjegyzés A .local fájl jelenlétének hatására a rendszer a DLL-fájlnak az alkalmazásmappában található másolatát részesíti előnyben a globális példánnyal szemben, ami viszont fontos szolgáltatásfrissítést tartalmazhat. Javasoljuk, hogy a szoftverfejlesztők és rendszergazdák nagy körültekintéssel használják, vagy teljes mértékben mellőzzék ezt a szolgáltatást olyan alkalmazások esetén, amelyek egymás melletti kódösszeállításokat használnak.

A Windows rendszerbeli DLL- és COM-átirányítási technikáról a Microsoft alábbi webhelyén olvashat bővebben:
http://msdn2.microsoft.com/en-us/library/aa375142.aspx


Ajánlott Gyakorlati tanácsok egymás mellett elhelyezkedő kódösszeállításokat használó szoftverfejlesztőknek
  • Ajánlott a kiadásra kész alkalmazáshoz egy alkalmazás-jegyzékfájlt mellékelni, amely tartalmazza az alkalmazás elkészítéséhez vagy teszteléséhez felhasznált egymás melletti kódösszeállítások verziószámát.
  • Minden esetben telepítse az egymás melletti kódösszeállítások jegyzékfájlját az egymás melletti DLL-fájlokkal együtt, még akkor is, ha az alkalmazásmappába történik a telepítés.
  • Ha alkalmazását egy Microsoft Windows 2000 vagy ennél korábbi verziójú rendszert futtató számítógépre telepíti, ezekhez az operációs rendszerekhez ne bocsátsa rendelkezésre az alkalmazásmappában lévő egymás melletti kódösszeállításokat. Ehelyett használja a rendszermappában lévő egymás melletti kódösszeállításokat.
  • Ne használja a .local funkciót, azaz a Windows rendszerbeli DLL- és COM-átirányítást.
  • Ne futtassa teljesen megadott útvonallal a LoadLibrary függvényt az egymás melletti DLL-kódösszeállításokon. Ehelyett használjon statikus hivatkozást, vagy pedig adja meg a LoadLibrary függvényhez a DLL-fájl eredeti fájlnevét. Például adja meg fájlnévként a „Gdiplus.dll” fájlt.
A Microsoft alábbi webhelyén további információ található:
http://msdn2.microsoft.com/en-us/library/ms997620.aspx

Hivatkozások

Az elkülönített alkalmazásokról és egymás melletti kódösszeállításokról a Microsoft következő webhelyén olvashat bővebben:
http://msdn2.microsoft.com/en-us/library/aa375193.aspx
Ha további információra van szüksége, kattintson a következő cikkszámra a Microsoft Tudásbázis megfelelő cikkének megnyitásához:
824684 A Microsoft szoftverfrissítéseinek leírásához használt szabványos terminológia bemutatása

Tulajdonságok

Cikk azonosítója: 835322 - Utolsó ellenőrzés: 2007. december 1. - Verziószám: 4.3
A cikkben található információ a következő(k)re vonatkozik:
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition 2005 Update Rollup 2
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional x64 Edition
Kulcsszavak: 
kbinfo kbtshoot kbsecurity kbprb KB835322
A Microsoft tudásbázisban szolgáltatott információkat "az adott állapotban", bárminemű szavatosság vagy garancia nélkül biztosítjuk. A Microsoft kizár mindennemű, akár kifejezett, akár vélelmezett szavatosságot vagy garanciát, ideértve a forgalomképességre és az adott célra való alkalmasságra vonatkozó szavatosságot is. A Microsoft Corporation és annak beszállítói semmilyen körülmények között nem felelősek semminemű kárért, így a közvetlen, a közvetett, az üzleti haszon elmaradásából származó vagy speciális károkért, illetve a kár következményeként felmerülő költségek megtérítéséért, még abban az esetben sem, ha a Microsoft Corporationt vagy beszállítóit az ilyen károk bekövetkeztének lehetőségére figyelmeztették. Egyes államok joga nem teszi lehetővé bizonyos károkért a felelősség kizárását vagy korlátozását, ezért a fenti korlátozások az ön esetében esetleg nem alkalmazhatók.

Visszajelzés küldése

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com