Postupy: Pomocí protokolu program Debug provozování .NET objektů v aplikaci Internet Explorer

Překlady článku Překlady článku
ID článku: 313892 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek popisuje aktivaci protokolování rozšířená chyba IEHost.dll spravovaného hostitele Common Language Runtime (CLR), která se spouští uvnitř Internet Explorer.

Microsoft .NET Framework SDK dokumentace popisuje způsob použití Fuslogvw.exe k ladění potíží, které mohou nastat při hostitelem modulu .NET v aplikaci Internet Explorer. "Fúze," ze kterého tento nástroj trvá jeho název je nová technologie společnosti nula dopad instalace programu. Proto Fuslogvw.exe hlásí chyby pouze v stahování sestavení nebo jeho závislosti.

O IEHost.dll

V aplikaci Internet Explorer podporováno pomocí dvě součásti .NET moduly. První je filtru MIME, je definována v Mscoree.dll, která sleduje příchozí všechny datové proudy s typ MIME application, oktet stream při Internet Explorer provede volání metody IMoniker BindToObject. Filtr prozkoumá datový proud bitů v záhlaví PE (Portable program) určit, zda je spravované modulu. Pokud není, filtr jednoduše vrátí a umožňuje Internet Explorer obvykle datový proud procesu.

Pokud je datový proud modulu .NET, filtr sestavení spravovaného program načte a volá do jeho objektu factory vytvořit instanci požadovaný objekt. Tento objekt factory zase volá IEManager zabezpečení správce konfiguruje domény aplikací (AppDomains) pro aplikaci Internet Explorer a používá důkazy o sestavení (zejména, členství URL a zónu) k určení oprávnění, se kterým má být načten sestavení.

Chyby v načítání sestavení, oprávnění zabezpečení nebo objekt inicializace nezaznamenané v Fusion protokolu. Se s ovládací prvky ActiveX objekt .NET, které obvykle není inicializován nezdaří bezobslužně, ponechejte pole malý, grooved, kde má být ovládací prvek. Pokud chcete zobrazit například chyby, potřebujete aktivní protokol ladění program.

Pro další informace o MIME filtry, klepněte na článek číslo článku databáze Microsoft Knowledge Base:
260840Příklad: MIMEfilt znázorňuje filtru MIME pro aplikaci Internet Explorer

Aktivace protokolu ladění program

Upozornění: Použijete-li Editor registru nesprávně, můžete způsobit vážné problémy, které mohou vyžadovat přeinstalaci operačního systému. Společnost Microsoft nemůže zaručit, že potíže vzniklé v důsledku nesprávného použití Editoru registru budete moci vyřešit. Editor registru používáte na vlastní nebezpečí.
  1. Klepněte na tlačítko Start, klepněte na příkaz Spustit, zadejte příkaz regedit a klepněte na tlačítko OK.
  2. Vyhledejte následující klíč registru a klepněte na něj:
    HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework
  3. Přidejte hodnotu DWORD nazvanou DebugIEHost tento klíč; přiřadit libovolnou nenulovou hodnotu.
  4. Přidat hodnotu řetězce s názvem IEHostLogFile. Přiřadit úplná cesta (včetně názvu souboru) souboru, ve kterém chcete provést záznam trasování ladění (například C:\Temp\IEDebug.log).

Informace obsažené v souboru protokolu ladění

Soubor protokolu je vytvořen program obsahuje položky, které jsou napsány dvě různé třídy .NET: Microsoft.IE.Manager a Microsoft.IE.SecureFactory. Například:
Creating security manager

Microsoft.IE.Manager: Microsoft.IE.Manager: unique id lgth = 28
Microsoft.IE.SecureFactory: Create SecureFactory() with security 
information
Microsoft.IE.Manager: Created secure factory
Microsoft.IE.SecureFactory: Creating instance of the object in the correct 
domain
Microsoft.IE.SecureFactory: pUrl = http://servername/DebugIEHost/DebugIEHost/test.htm
Microsoft.IE.SecureFactory: id = 86474707A316B616E65610000000
Microsoft.IE.SecureFactory: link = 
Microsoft.IE.SecureFactory: licenses = 
Microsoft.IE.Manager: Url = 
http://servername/DebugIEHost/DebugIEHost/test.htm
Microsoft.IE.Manager: UrlGetPartW returned 0
Microsoft.IE.Manager: CodeBase = http://servername
Microsoft.IE.Manager: Application = DebugIEHost/DebugIEHost
					
Tato informace identifikuje URL, která se používá pro účely zabezpečení název aplikace, která je právě spuštěna, základ kód používaný pro stahování závislosti a licencí, které platí tento objekt (mezi další užitečné informace).

Trasování zásobníku je zaznamenán v souboru protokolu, pokud dojde k chybě během vytvoření objektu je nejužitečnější informace. Předpokládejme například, pokusil zapsat do složky v konstruktoru třídy:
public DebugIEHost() {
    // This call is required by the Windows.Forms Form Designer.
    InitializeComponent();

    // TODO: Add any initialization after the InitForm call
    FileStream fs = File.Open(@"C:\temp.tmp",System.IO.FileMode.CreateNew);
    StreamWriter sw = new System.IO.StreamWriter(fs);
    sw.WriteLine("Hello, world");
}
				
Tato operace neproběhne úspěšně, ale protože objekt má není byla plně sited v aplikaci Internet Explorer ještě, selže bezobslužně. Trasování verbose zásobníku je však zapsán do souboru protokolu. Obvykle naleznete dva trasování zásobníku: vnitřní výjimce (což je vyvolána podle ovládání) a server výjimka (chyba je vyvolána run-time odpověď na selhání ovládacího prvku). Například:
Microsoft.IE.SecureFactory: System.Reflection.TargetInvocationException:
Exception has been thrown by the target of an invocation.---->
System.Security.SecurityException: Request for the permission of 
type System.Security.Permissions.FileIOPermission, mscorlib, 
Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 
failed.
   at System.Security.CodeAccessSecurityEngine.CheckHelper(PermissionSet 
grantedSet, PermissionSet deniedSet, CodeAccessPermission demand, 
PermissionToken permToken)
   ...
					
Pro výjimky zabezpečení také zobrazit podrobnosti o tom, které se nezdařil požadavek oprávnění zabezpečení:
The state of the failed permission was: 
<IPermission class="System.Security.Permissions.FileIOPermission, 
mscorlib, Version=1.0.3300.0, Culture=neutral, 
PublicKeyToken=b77a5c561934e089"
             version="1"
             Read="C:\temp.tmp"
             Write="C:\temp.tmp"/>
					

Odkazy

Další informace o ladění .NET Framework SDK, naleznete na následujícím webu:
Debugging with the Microsoft .NET Framework SDK

Vlastnosti

ID článku: 313892 - Poslední aktualizace: 24. ledna 2004 - Revize: 5.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.0
  • Microsoft Internet Explorer 5.5
  • Microsoft Internet Explorer (Programming) 6.0
Klíčová slova: 
kbmt kbctrl kbmisctools kbdebug kbhowtomaster KB313892 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:313892

Dejte nám zpětnou vazbu

 

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