Freigeben über


Automatisieren von InfoPath aus einer externen Anwendung

Microsoft InfoPath ermöglicht die Anwendungsautomatisierung aus Code, der mithilfe von COM und Skripts mithilfe von Methoden des Application-Objekts und der XDocuments-Auflistung geschrieben wurde.

Übersicht über die Objekte Application und XDocument

Das Application-Objekt enthält die folgenden Methoden, die für die Automatisierung verwendet werden:

Methode Beschreibung
CacheSolution
Untersucht den im Cache und aktualisiert ihn ggf. vom veröffentlichten Speicherort der Formularvorlage aus.
Quit
Beendet die Microsoft Office InfoPath-Anwendung.
RegisterSolution
Installiert die angegebene Microsoft Office InfoPath-Formularvorlage.
UnregisterSolution
Deinstalliert die angegebene Microsoft Office InfoPath-Formularvorlage.

Die XDocuments-Auflistung enthält die folgenden Methoden, die für die externe Automatisierung verwendet werden können:

Methode Beschreibung
Close-Methode
Schließt das angegebene Microsoft Office InfoPath-Formular.
Neue Methode
Erstellt ein neues Microsoft Office InfoPath-Formular.
NewFromSolution-Methode
Erstellt ein neues Microsoft Office InfoPath-Formular basierend auf der angegebenen Formularvorlage.
NewFromSolutionWithData-Methode
Erstellt ein neues Microsoft Office InfoPath-Formular mit den angegebenen XML-Daten und der angegebenen Formularvorlage.
Open-Methode
Öffnet das angegebene Microsoft Office InfoPath-Formular.

Um das Application-Objekt aus einer externen Anwendung zu verwenden, verwenden Sie die CreateObject-Funktion mit der ProgID der InfoPath-Anwendung ("InfoPath.Application"), um eine Objektvariable zu erstellen, die die InfoPath-Anwendung darstellt. Sie können dann die XDocuments-Eigenschaft verwenden, um auf die XDocuments-Auflistung zuzugreifen und deren Methoden zum Öffnen oder Erstellen eines InfoPath-Formulars zu verwenden. Im folgenden Beispiel wird die Erstellung eines Verweises auf das Application-Objekt mithilfe der Programmiersprache Microsoft Visual Basic 6.0 oder Visual Basic for Applications (VBA) veranschaulicht:

Dim objIP As Object 
 
Set objIP = CreateObject("InfoPath.Application") 
 
' Open an existing form 
objIP.XDocuments.Open ("C:\MyFolder\MyForm.xml") 
 
' Create a new form based on a form template 
objIP.XDocuments.NewFromSolution ("C:\MyFolder\MyForm.xsn") 

Hinweis

Da die CreateObject-Funktion eine Objektvariable mithilfe der späten Bindung erstellt, ist die automatische Anweisungsvervollständigung im Visual Basic-Editor nicht verfügbar. Informationen zur richtigen Aufrufsyntax finden Sie unter den Links in den vorherigen Tabellen.