SO WIRD'S GEMACHT: Verwenden der Automatisierung zum Abrufen und Festlegen von Office-Dokumenteigenschaften mit Visual C# .NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 303296 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel wurde zuvor veröffentlicht unter D303296
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
303296 HOWTO: Use Automation to Get and to Set Office Document Properties with Visual C# .NET
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Zusammenfassung

In diesem Artikel wird beschrieben, wie Sie einen Microsoft Visual C# .NET-Automatisierungsclient erstellen können, mit dem die Eigenschaften eines Word-Dokuments bearbeitet werden können. Der in diesem Artikel aufgeführte Beispielcode wurde zwar insbesondere für Word erstellt, die entsprechenden Verfahrensweisen lassen sich jedoch auch auf die Automatisierung von Microsoft Excel und Microsoft PowerPoint anwenden.

Weitere Informationen

Erstellen eines Automatisierungsclients für Microsoft Word

  1. Starten Sie Visual Studio .NET.
  2. Klicken Sie im Menü Datei auf Neu, und klicken Sie anschließend auf Projekt. Wählen Sie aus den Visual C#-Projekttypen die Option Windows-Anwendung aus. Form1 wird standardmäßig erstellt.
  3. Fügen Sie der Microsoft Word Object Library einen Verweis hinzu. Gehen Sie hierzu folgendermaßen vor:
    1. Klicken Sie im Menü Projekt auf Verweis hinzufügen.
    2. Gehen Sie zu dem Eintrag für die Microsoft Word Object Library auf der Registerkarte COM, und klicken Sie auf Auswählen.

      Hinweis: Microsoft Office 2003 beinhaltet Primäre Interop-Assemblys (Primary Interop Assemblies = PIAs). In Microsoft Office XP sind zwar keine PIAs enthalten, Sie können diese jedoch bei Bedarf downloaden. Weitere Informationen zu Office XP-PIAs finden Sie im folgenden Artikel der Microsoft Knowledge Base:
      328912 INFO: Microsoft Office XP PIAs Are Available for Download
    3. Klicken Sie im Dialogfeld Verweise hinzufügen auf OK, um Ihre Auswahl zu bestätigen. Klicken Sie auf Ja, wenn Sie gefragt werden, ob die von Ihnen ausgewählten Bibliotheken-Wrapper erstellt werden sollen.
  4. Wählen Sie im Menü Ansicht die Option Toolbox, um die Toolbox anzuzeigen, und fügen Sie dann Form1 eine Schaltfläche hinzu.
  5. Doppelklicken Sie auf Button1 (Schaltfläche 1). Das Codefenster für das Formular erscheint.
  6. Ersetzen Sie im Codefenster den folgenden Code
    private void button1_Click(object sender, System.EventArgs e)
    {
    }
    					
    durch den Code:
    private void button1_Click(object sender, System.EventArgs e)
    {
       Word.Application oWord;
       Word._Document oDoc;
       object oMissing = Missing.Value;
       object oDocBuiltInProps;
       object oDocCustomProps;
    			   //Create an instance of Microsoft Word and make it visible.
       oWord = new Word.Application();
       oWord.Visible = true;
    
       //Create a new Document and get the BuiltInDocumentProperties collection.
       oDoc = oWord.Documents.Add(ref oMissing, ref oMissing, ref oMissing, 
                                  ref oMissing);
       oDocBuiltInProps = oDoc.BuiltInDocumentProperties;
       Type typeDocBuiltInProps = oDocBuiltInProps.GetType();
    
       //Get the Author property and display it.
       string strIndex = "Author";
       string strValue;
       object oDocAuthorProp = typeDocBuiltInProps.InvokeMember("Item", 
                                  BindingFlags.Default | 
                                  BindingFlags.GetProperty, 
                                  null,oDocBuiltInProps, 
                                  new object[] {strIndex} );
       Type typeDocAuthorProp = oDocAuthorProp.GetType();
       strValue = typeDocAuthorProp.InvokeMember("Value", 
                                  BindingFlags.Default |
                                  BindingFlags.GetProperty,
                                  null,oDocAuthorProp,
                                  new object[] {} ).ToString();
       MessageBox.Show( "The Author is: " + strValue,"Author" );
    
       //Set the Subject property.
       strIndex = "Subject";
       strValue = "The Subject";
       typeDocAuthorProp.InvokeMember("Item", 
                                  BindingFlags.Default | 
                                  BindingFlags.SetProperty, 
                                  null,oDocBuiltInProps, 
                                  new object[] {strIndex,strValue} );
    			   //Add a property/value pair to the CustomDocumentProperties collection.
       oDocCustomProps = oDoc.CustomDocumentProperties;
       Type typeDocCustomProps = oDocCustomProps.GetType();
    
       strIndex = "Knowledge Base Article";
       strValue = "Q303296";
       object[] oArgs = {strIndex,false,
                         MsoDocProperties.msoPropertyTypeString,
                         strValue};
    
       typeDocCustomProps.InvokeMember("Add",BindingFlags.Default | 
                                  BindingFlags.InvokeMethod, null, 
                                  oDocCustomProps, oArgs );
    
       MessageBox.Show("Select \"Properties\" from the File menu "
            + "to view the changes.\nSelect the Summary tab to view "
            + "the Subject property and the Custom tab to view the Knowledge"   
            + "Base Article property.", "Check File Properties",
            MessageBoxButtons.OK,MessageBoxIcon.Information);
    }
    					
  7. Blättern Sie an den oberen Rand des Codefensters. Fügen Sie am Ende der Liste mit den Direktiven des Typs using die folgenden Zeilen ein:
    using Microsoft.Office.Core;
    using Word = Microsoft.Office.Interop.Word;
    using System.Reflection;
    					
  8. Drücken Sie [F5], um die Anwendung auszuführen.
Hinweis: Die Schnittstellen DocumentProperties (Dokumenteigenschaften) und DocumentProperty (Dokumenteigenschaft) sind spät gebundene Schnittstellen. Wenn Sie diese Schnittstellen verwenden möchten, müssen Sie sie wie eine IDispatch-Schnittstelle behandeln.

Informationsquellen

Weitere Informationen finden Sie auf folgender MSDN-Website:
Microsoft Office Development with Visual Studio (Microsoft Office-Entwicklung mit Visual Studio)
http://msdn2.microsoft.com/en-us/library/aa188489(office.10).aspx
Weitere Informationen finden Sie in folgendem Artikel der Microsoft Knowledge Base:
303294 SO WIRD'S GEMACHT: Verwenden der Automatisierung zum Abrufen und Festlegen von Office-Dokumenteigenschaften mit Visual Basic .NET

Eigenschaften

Artikel-ID: 303296 - Geändert am: Mittwoch, 17. Januar 2007 - Version: 5.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Office PowerPoint 2003
  • Microsoft PowerPoint 2002 Standard Edition
  • Microsoft Office Word 2003
  • Microsoft Word 2002 Standard Edition
Keywords: 
kbpia kbautomation kbhowto KB303296
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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