Freigeben über


Änderungen am Entwurf von Office-Projekten, die auf .NET Framework 4 abzielen

Visual Studio 2010 nimmt einige Änderungen am Entwurf von Office-Projekten vor, die auf .NET Framework 4 abzielen. Wenn Sie mit Office-Projekten in früheren Versionen von Visual Studio vertraut sind, sollten Sie diese Änderungen beachten, bevor Sie Office-Projekte entwickeln, die auf .NET Framework 4 abzielen. Wenn Sie ein vorhandenes Projekt aktualisieren möchten, um .NET Framework 4 als Zielversion festzulegen, sind mehrere "unterbrechende" Änderungen zu beachten, d. h. Änderungen, die die bisherige Funktion beeinträchtigen.

Grundlegendes zum neuen schnittstellenbasierten Entwurf der Visual Studio 2010-Tools für Office-Laufzeit

Wenn Sie ein Office-Projekt entwickeln, das auf .NET Framework 4 abzielt, sind die meisten in Visual Studio 2010-Tools for Office-Laufzeit verwendeten Typen Schnittstellen. Dies ist eine wesentliche Änderung im Vergleich zu früheren Versionen der Visual Studio Tools for Office-Laufzeit, in denen diese Typen Klassen sind. Wenn Sie z. B. .NET Framework 4 als Zielversion festlegen, sind die Worksheet- und Document-Typen keine Klassen, sondern Schnittstellen. Weitere Informationen finden Sie unter Übersicht über die Visual Studio Tools for Office-Laufzeit.

Bei Typen, die Sie in früheren Versionen von Visual Studio Tools for Office-Laufzeit direkt instanziieren konnten, rufen Sie jetzt Instanzen dieser Typen mithilfe von Methoden des Globals.Factory-Objekts ab. Verwenden Sie z. B. die Globals.Factory.CreateSmartTag-Methode, um ein Objekt abzurufen, das die SmartTag-Schnittstelle implementiert. Weitere Informationen finden Sie unter den folgenden Themen:

Neue Basisklassen in Office-Projekten

Der neue schnittstellenbasierte Entwurf von Visual Studio 2010-Tools for Office-Laufzeit beeinflusst die erstellten Klassen in Office-Projekten, z. B. ThisDocument, ThisWorkbook und ThisAddIn. In Office-Projekten, die auf .NET Framework 3.5 und frühere Versionen des Frameworks abzielen, werden diese erstellten Klassen von Klassen in Visual Studio Tools for Office-Laufzeit abgeleitet, z. B. Microsoft.Office.Tools.Word.Document, Microsoft.Office.Tools.Excel.Worksheet und Microsoft.Office.Tools.AddIn. In Projekten, die auf .NET Framework 4 abzielen, sind diese Visual Studio Tools for Office-Laufzeit-Klassen jetzt Schnittstellen. Daher können die erstellten Klassen in Office-Projekten nicht mehr ihre Implementierung von ihnen ableiten. Stattdessen werden die erstellten Klassen von neuen Basisklassen wie DocumentBase, WorksheetBase und AddInBase abgeleitet. Weitere Informationen finden Sie unter Programmieren von Add-Ins auf Anwendungsebene und Programmieren von Anpassungen auf Dokumentebene.

Die Basisklassen sind nicht Teil der verteilbaren Visual Studio Tools for Office-Laufzeit. Stattdessen werden sie in Hilfsprogrammassemblys definiert, die in Visual Studio 2010 enthalten sind. Diese Assemblys werden beim Erstellen von Office-Projekten in den Ausgabeordner kopiert und müssen mit der Lösung bereitgestellt werden. Weitere Informationen zu den Hilfsprogrammassemblys finden Sie unter Assemblys in Visual Studio Tools for Office Runtime.

Unterbrechende Änderungen in Office-Projekten, für die .NET Framework 4 als Zielversion neu zugewiesen wird

In der folgenden Tabelle sind die wichtigsten unterbrechenden Änderungen für Office-Projekte aufgeführt, denen .NET Framework 4 als Zielversion neu zugewiesen wird. Weitere Details finden Sie unter Migrieren von Office-Lösungen zu .NET Framework 4.

Unterbrechende Änderung

Auswirkung

Das SecurityTransparentAttribute wird in Office-Projekten nicht mehr verwendet oder unterstützt.

Sie müssen dieses Attribut aus der AssemblyInfo-Codedatei in Office-Projekten entfernen, die Sie von Visual Studio 2008 aktualisieren. Weitere Informationen finden Sie unter Erforderliche Änderungen zum Ausführen von Office-Projekten, die zu .NET Framework 4 migriert werden.

Das ExcelLocale1033Attribute wird in Excel-Projekten nicht mehr verwendet oder unterstützt.

Sie müssen dieses Attribut aus der AssemblyInfo-Codedatei in Excel-Projekten entfernen. Weitere Informationen finden Sie unter Aktualisieren von Excel- und Word-Projekten, die zu .NET Framework 4 migriert werden.

Das Programmiermodell von Menüband (Visueller Designer)-Projektelementen hat sich geändert.

Sie müssen die CodeBehind-Datei für alle Menübandelemente im Projekt ändern. Sie müssen außerdem Code ändern, in dem Menüband-Steuerelemente zur Laufzeit instanziiert werden, Menübandereignisse behandelt werden oder die Position einer Menübandkomponente programmgesteuert festgelegt wird. Weitere Informationen finden Sie unter Aktualisieren der Anpassungen von Menübändern in Office-Projekten, die zu .NET Framework 4 migriert werden.

Das Programmiermodell von Outlook-Formularbereichen hat sich geändert.

Sie müssen die CodeBehind-Datei für alle Formularbereiche im Projekt und für Code ändern, in dem bestimmte Formularbereichklassen zur Laufzeit instanziiert werden. Weitere Informationen finden Sie unter Aktualisieren von Formularbereichen in Outlook-Projekten, die zu .NET Framework 4 migriert werden.

Das Programmiermodell für Smarttags in Excel- und Word-Projekte hat sich geändert. Smarttags sind in Excel 2010 und Word 2010 veraltet. Weitere Informationen finden Sie unter Übersicht über Smarttags.

Sie müssen Code ändern, in dem Smarttag- und Aktionsobjekte erstellt werden, sowie Code, in dem eine benutzerdefinierte Smarttagerkennung definiert wird. Weitere Informationen finden Sie unter Aktualisieren von Excel- und Word-Projekten, die zu .NET Framework 4 migriert werden.

Die Syntax der GetVstoObject- und HasVstoObject-Methoden wurde geändert.

Sie müssen das Globals.Factory-Objekt an diese Methoden übergeben, wenn Sie in systemeigenen Objekten aus den primären Interopassemblys (PIAs) auf sie zugreifen, oder Sie können auf diese Methoden in dem Objekt zugreifen, das von der Globals.Factory-Eigenschaft im Projekt zurückgegeben wird. Weitere Informationen finden Sie unter Aktualisieren von Excel- und Word-Projekten, die zu .NET Framework 4 migriert werden.

Die Ereignisse von Word-Inhaltssteuerelementen sind neuen Delegaten zugeordnet.

Sie müssen Code ändern, in dem Ereignisse von Word-Inhaltssteuerelementen behandelt werden, um die neuen Delegaten anzugeben. Weitere Informationen finden Sie unter Aktualisieren von Excel- und Word-Projekten, die zu .NET Framework 4 migriert werden.

Die OLEObject-Klasse und die OLEControl-Klasse wurden umbenannt.

Sie müssen Code ändern, in dem Instanzen dieser Klassen verwendet werden, um stattdessen das Microsoft.Office.Tools.Excel.ControlSite-Objekt oder Microsoft.Office.Tools.Word.ControlSite-Objekt zu verwenden. Weitere Informationen finden Sie unter Aktualisieren von Excel- und Word-Projekten, die zu .NET Framework 4 migriert werden.

Hostelementklassen (z. B. ThisWorkbook, Sheetn, ThisDocument und ThisAddIn) stellen keine Dispose-Methode mehr bereit, die überschrieben werden kann.

Sie müssen den Code in der Dispose-Methodenüberschreibung in den Shutdown-Ereignishandler in der Hostelementklasse (z. B. ThisAddIn_Shutdown) verschieben und die Dispose-Methodenüberschreibung aus der Hostelementklasse entfernen.

Siehe auch

Konzepte

Neues in der Office-Entwicklung

Übersicht über die Visual Studio Tools for Office-Laufzeit

Weitere Ressourcen

Migrieren von Office-Lösungen zu .NET Framework 4

Änderungsprotokoll

Datum

Versionsgeschichte

Grund

Mai 2010

Es wurden Informationen zum Entfernen der Dispose-Methode in Projekten mit der Zielversion .NET Framework 4 hinzugefügt.

Informationsergänzung.