.NET Assemblies und Metadaten

 Documents

 19 views
of 17
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Description
.NET Assemblies und Metadaten René Löschl 1 Inhalt  Begriffe  Eigenschaften von Metadaten  Vorteile von Metadaten  Typische Metadaten  Zugriff…
Share
Transcript
.NET Assemblies und Metadaten René Löschl 1 Inhalt  Begriffe  Eigenschaften von Metadaten  Vorteile von Metadaten  Typische Metadaten  Zugriff und Verwaltung  Struktur von Assemblies  Eigenschaften von Assemblies 2 Begriffe  Metadaten  Metadaten-Token  Modul  Manifest  RVA  Assembly  „managed“ Code 3 Eigenschaften von Metadaten  werden in selber Datei wie Programm Code gespeichert  werden über Metadaten-Tokens angesprochen  Metadaten werden in Tabellen gespeichert Drei Arten von Tabellen 1. Definitionstabellen 2. Referenztabellen 3. Manifesttabellen 4 Vorteile von Metadaten  Sprachunabhängigkeit  einfache Versionsverwaltung  einfache Datenübertragung  Einfache Nationalisierung  Sicherheit  Metadaten und „unmanaged“ APIs 5 Komplette Liste der Metadatentabellen 0x00 Module 0x0B Constant 0x14 Event 0x1D FieldRVA 0x27 Export ed Type 0x01 TypeRef 0x0c CustomAttribute 0x15 0x20 Assembly 0x28 Property Manif Map est Resou rce 0x02 TypeDef 0x0D FieldMarshal 0x17 Property 0x21 0x29 Nested AssemplyPr Class ocessor 0x04 Field 0x0E DeclSecurity 0x18 0x22 Assembly MethodS OS emantics 0x06 Method 0x0F ClassLayout 0x19 0x23 MethodI AssemblyR mpl ef 0x08 Param 0x10 FieldLayout 0x1A 0x24 ModuleR AssemblyR ef ef- Processor 0x09 0x11 StandAloneSig 0x1B 0x25 InterfaceI TypeSpec AssemblyR mpl ef- OS 0x0A 0x12 EventMap 0x1C ImplMap 0x26 Fie MemberRe f 6 Einige Metadatentabellen Code Tabellenname Spalte Beschreibung n 0x00 Module 5 Diese Tabelle enthält nur eine Zeile, die den Namen, die Beschreibung und das GUID speichert, das mit dem Modul verbunden wird. 0x04 Field 3 Diese Tabelle definiert die Attribute für ein Feld, seinen Namen und seine Signatur. 0x06 Method 6 Diese Tabelle enthält für jede im Modul definierte Methode einen Eintrag. In den Spalten werden Informationen und der Startpunkt des Codes gespeichert. 0x09 InterfaceImpl Hier wird festgehalten, welche Interfaces durch das Modul beschrieben werden. 0x20 Assembly 6 HashAlgId MajorVersion Flags PublicKey Name Culture 0x26 File 3 Assemblies können andere Dateien wie Dokumentationen oder Konfigurationen mit .file referenzieren. Diese Tabelle enthält alle .file Einträge. 7 Prüfung von Metadaten  Fehlerklassen: 1. Error 2. Warning 3. CLS  Prüfungsregeln: 1. keine Tabelle zwei gleiche Zeilen 2. Prüfen der Bitmasken auf Richtigkeit 3. Etc. 8 Zugriff und Verwaltung  Reflection API  COM API Schwierigkeit besteht darin, die logische Darstellung von Metadaten auf ihre physikalische Repräsentation abzubilden! 9 Physical Dump „Hello World“ 10 Struktur von Assemblies  im Windows kompatiblen PE-Fileformat 11 Betrachtung von Assemblies  Dumpbin  PEDump  ildasm 12 Dump eines Assemblies (1/2) 13 Dump eines Assemblies (2/2) 14 Physical Dump „Hello World“ 15 Eigenschaften von Assemblies  einziges Modul darf einen Eintrag in der Assembly- Tabelle  Assembly fasst Module zu logischer Einheit zusammen  nur wenige Bytes von x86 Code  enthalten Metadaten 16 Fin Danke für Eure Aufmerksamkeit… 17
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks