Office Automation - Outlook Zhijian Zhao, Ferdinand Buechler, Gregor Valentin.

Slides:



Advertisements
Ähnliche Präsentationen
E-Solutions mySchoeller.com for Felix Schoeller Imaging
Advertisements

M a r c – o l i v e r p a h l Informatik I – Kapitel 7 Klassen und höhere Datentypen Zusammenfassung des Kapitel 7 Küchlin, Weber, Einführung in die Informatik,
Software Engineering 2 Übung – Konstruktion interaktiver (CASE) Tools SS 2007 Leif Geiger, Carsten Reckord, Software Engineering.
DNS-Resolver-Mechanismus
Microsoft Referenzarchitekturen- Infrastruktur für Connected Systems
Entwicklung und Einsatz von Smart Client-Anwendungen Jens Häupel Developer Evangelist Microsoft Deutschland GmbH Dirk Primbs.
Windows Vista Deployment
Windows Vista für Entwickler
Neue Mobilität Frank Prengel Developer Evangelist Developer Platform & Strategy Group Microsoft Deutschland GmbH
1. 2 Microsoft.NET Überblick Dirk Primbs Technologieberater Developer Platform & Strategy Group Microsoft Deutschland GmbH.
Personalisierte Benutzeroberflächen BFD WS 12/13 Übung 6 Producing an end-user experience that is uniquely appropriate for each individual. [Sears]
Subjects and Direct Objects When to use der vs. den.
Dipl. Inf. (FH) Paul Mizel Compilerbau.NET Compiler / Codegeneratoren / Skriptsprachen.
Lehrstuhl Informatik III: Datenbanksysteme Andreas Scholz 1 Programming Database Web Applications Web Service Technologies Andreas Scholz.
Dokumentation des Umul Projektes documentation of the Umul Project der 8R3: by the 8R3: Energiesparen im Klassenraum saving of energy in the classroom.
Installation des Add-In SOLVERSTAT
Dynamische Webseiten Java servlets.
DVG Verkettete Listen Verkettete Listen. DVG Verkettete Listen 2 Primitive Datentypen Vorteile: –werden direkt vom Prozessor unterstützt.
.NET – Quo Vadis? Dariusz Parys Developer Group Microsoft GmbH.
Uwe Habermann WPF Avalon Formulare aus VFP verwenden Venelina Jordanova
Visual Extend Features für Entwickler deutschsprachige FoxPro User Group Uwe Habermann VFX 05 D.
WebCast: Managed Smart Tags mit VSTO Jens Häupel.NET Technologieberater Microsoft Deutschland GmbH
CTS2 based Terminology Server – Overview – Project eBPG
Frank Fischer Manager Evangelism and Marketing Microsoft Deutschland GmbH.
Microsoft Office Forms Server
Entwickeln einer Windows 8 Modern UI Businessapplikation auf der Basis von Dynamics CRM/xRM Christian Haller Marc Sallin isolutions AG isolutions.
Medien zwischen Technologie und Gesellschaft Dozent: Herr Prof. Dr. Manfred Thaller SS 13 Referent: Christian Braun.
Institut AIFB, Universität Karlsruhe (TH) Forschungsuniversität gegründet 1825 Towards Automatic Composition of Processes based on Semantic.
ETS4 - Was ist neu? - Wie fange ich an? - Noch Fragen?
Test Driven Development - Romano Adler-
BAS5SE | Fachhochschule Hagenberg | Daniel Khan | S SPR5 MVC Plugin Development SPR6P.
3rd Review, Vienna, 16th of April 1999 SIT-MOON ESPRIT Project Nr Siemens AG Österreich Robotiker Technische Universität Wien Politecnico di Milano.
© All rights reserved. Zend Technologies, Inc. Jan Burkl System Engineer, Zend Technologies Zend Server im Cluster.
| Basel Von der SharePoint Taskliste zum gemanagten Project in Project Server Luca Argentiero Solution Specialist Microsoft
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Your name Bedeutung von Internet- Technologien Gruppe 1 Andreas Feuerstein Philipp Hochratner Christian Weinzinger.
Developer Day Office APPs entwicklen Simon Amrein Trivadis AG Die ersten Schritte in eine neue Office-Welt.
Jan Hentschel Microsoft Expert Student Partner Windows Azure Windows Azure Windows Azure Mobile Services.
Neno Loje Berater & MVP für Visual Studio ALM und TFS (ehemals VSTS) Hochqualitative Produkte mit Visual Studio & TFS 2010.
| Basel Developing apps for SharePoint 2013 using Visual Studio 2013 René Modery, Office 365 MVP, 1stQuad Solutions.
Reiner Ganser Solution Architect 1stQuad Solutions GmbH Presentation Subtitle.
Frank Fischer + Bernhard Frank Microsoft Deutschland GmbH.
Quelle: Standish Group, 2006 Fourth Quarter Research Report, CHAOS Research Results.
Cooperation unlimited © Zühlke August 2008 Hansjörg Scherer Folie 1 Cooperation unlimited TFS als BackEnd für Visual Studio und Eclipse.
3/28/2017 8:11 PM Visual Studio Tools für Office { Rapid Application Development für Office } Jens Häupel Platform Strategy Manager Microsoft Deutschland.
MVVM in Windows 8 und Windows Phone 8
PresenterCompanyContact Windows Azure ASP.NET Web-Anwendungen schnell und zuverlässig bereitstellen.
Parallel Programming Thread Synchronization. Heute 1. Lösung zu Assignment 2 2. Erstellen und Starten von Threads in Java 3. Das synchronized Schlüsselwort.
Department of Computer Science Homepage HTML Preprocessor Perl Database Revision Control System © 1998, Leonhard Jaschke, Institut für Wissenschaftliches.
XML IV: Cocoon 2.
F-Sharp (F#) Eine multiparadigmatische Sprache. Merkmale von F# Multiparadigmatisch.NET-Sprache Skalierbar und effizient Als Forschungsprojekt von Microsoft.
Template v5 October 12, Copyright © Infor. All Rights Reserved.
SharePoint FIS HandsOn – out of the Box.
Staatsballett Berlin Ein Verbesserungskonzept für den Social- Media Auftritt Your picture here.
Ein Projekt des Technischen Jugendfreizeit- und Bildungsvereins (tjfbv) e.V. kommunizieren.de Blended Learning for people with disabilities.
Making people work together! Folie 1 NEXPLORE AG Stefan von Niederhäusern Einfache Anwendung der SuisseID durch das Software Development KIT
Office Business Anwendungen mit SharePoint 2010 Fabian Moritz SharePoint MVP.
Office Business Anwendungen mit SharePoint Fabian Moritz | MVP Office SharePoint Server.
Digital Dashboard Toolkit 2001 SharePoint Portal Server released targeting portal market SharePoint Team Services (STS) released as free add-
© All rights reserved. Zend Technologies, Inc. Jenseits von var_dump(): Debugging in ZF Jan Burkl System Engineer.
Design Patterns Ein Muster (pattern) ist eine Idee, die sich in einem praktischen Kontext als nützlich erwiesen hat und dies auch in anderen sein wird.
Die nächste Generation von Microsoft Office System 2007 Microsoft Office System Gernot Kühn Technologieberater Office System Mittelstandsbetreuung.
Agile ALM for Plex/2E CM MatchPoint ALM. Themen Agenda CM MatchPoint ALM Übersicht CM MatchPoint 5.2 Web und Mobile Entwicklung Agile ALM / DevOps CM.
KIT – die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Vorlesung Knowledge Discovery - Institut AIFB Tempus fugit Towards.
Launch ON Global.vi System ID object name classname Services to suscribe Observer Control Ref vi-path Service name Step 1 : Objects register to the Global.vi´s,
SQL Server 2005 CLR Integration Sebastian Weber Microsoft Deutschland GmbH
Technische Universität München 1 CADUI' June FUNDP Namur G B I The FUSE-System: an Integrated User Interface Design Environment Frank Lonczewski.
Page 1 XXX21/08/2014 Implemented by Benutzen Sie diese Titelfolie für Programme und Projekte im Ausland. Setzen Sie das „einheitliche Logo der Zusammenarbeit“
Der formelle Imperativ – the Imperative
Workshop 1 Getting Started 2016 Boris Wylutzki
 Präsentation transkript:

Office Automation - Outlook Zhijian Zhao, Ferdinand Buechler, Gregor Valentin

Ziele Erstellen eines einfachen Mailfilters Erstellen eines einfachen Mailfilters … Erweiterung durch Com-Add-In Erweiterung durch Com-Add-In Hinzufügen eines Buttons; Beim Betätigen des Buttons soll eine Messagebox erscheinen Hinzufügen eines Buttons; Beim Betätigen des Buttons soll eine Messagebox erscheinen

Outlook - Anwendungen Formular Benutzerdefinierten Ordner mit Standardformularen verwenden Team Folder Wizard Benutzerdefinierten Ordner mit benutzerdefinierten Formularen verwenden Ordner Homepages über Browser öffentliche Exchange Ordner und Outlook Formulare benutzen COM-Add-In Exchange Agent Andwendungen die spezielle Funktionen bereitstellen (auf Exchange und Outlook basierend)

Outlook COM Add-In (Component Object Model) Verändert normale Funktionalität und das Erscheinungsbild von Outlook Verändert normale Funktionalität und das Erscheinungsbild von Outlook Ist entweder.dll (dynamic-link library) Datei die von MS Officeprogrammen geladen wird Ist entweder.dll (dynamic-link library) Datei die von MS Officeprogrammen geladen wird oder eine Microsoft ActiveX.exe für den Visual Basic Editor oder eine Microsoft ActiveX.exe für den Visual Basic Editor => Wobei die.dll´s schneller sind als die.exe Dateien

Add-In vs. COM-Add-In Beide verändern die Funktionalität und das Erscheinungsbild von Office- Programmen. Ein Add-In wird lediglich für ein bestimmtes Officeprodukt erstellt. Ein Add-In wird lediglich für ein bestimmtes Officeprodukt erstellt. Erstellen einer speziellen Vorlage in Excel die man bei jedem Start zur Verfügung haben möchte Ein COM-Add-In hingegen kann von allen Officeprogrammen genutzt werden. Hat also allgemeinen Code und speziellen Code

Add-In Arten Word add-ins.dot,.wll,.wiz Word add-ins.dot,.wll,.wiz Excel add-ins.xla,.xll Excel add-ins.xla,.xll PowerPoint add-ins.ppa,.pwz PowerPoint add-ins.ppa,.pwz Access add-ins.mda,.mde Access add-ins.mda,.mde Exchange Client Erweiterungen.dll Exchange Client Erweiterungen.dll Outlook und Microsoft Exchange clients => Erstellen der Vorlage; Speichern als Add-In des jeweiligen Programms; Hinzufügen (Extras -> Add-In -> Neu Hinzufügen)

Erstellung des COM-Add-Ins An dieser Stelle sollte das Step-by-Step Beispiel An dieser Stelle sollte das Step-by-Step Beispiel HOW TO: Build an Office COM Add-in by Using Visual C#.NET HOW TO: Build an Office COM Add-in by Using Visual C#.NET stehen, welches wir nur zum Kennenlernen empfehlen. Die Screenshots haben wir wegen der Größe wegelassen. Mehr Durchblick erhält man beim Lesen von diesem Artikel Developing.NET Smart Clients for Microsoft Office XP (msdn) von dem ein Link auf unserer Page unter der Überschrift COM-Add-In II zu finden ist. Mehr Durchblick erhält man beim Lesen von diesem Artikel Developing.NET Smart Clients for Microsoft Office XP (msdn) von dem ein Link auf unserer Page unter der Überschrift COM-Add-In II zu finden ist. Developing.NET Smart Clients for Microsoft Office XP (msdn) Developing.NET Smart Clients for Microsoft Office XP (msdn)

Referenzen Project Add References Project Add References.NET.NET System.Windows.forms System.Windows.forms … COM COM Microsoft Outlook 10.0 Object Library Microsoft Outlook 10.0 Object Library Microsoft Office 10.0 Object library Microsoft Office 10.0 Object library … USING USING

Struktur des COM-Add-Ins public class Connect : Object, Extensibility.IDTExtensibility2 {public void OnConnection(…) { } {public void OnConnection(…) { } public void OnDisconnection( … ) { } public void OnAddInsUpdate( … ) { } public void OnStartupComplete( … ) { } public void OnBeginShutdown( … ) { } private object applicationObject; private object addInInstance; }

OnConnection public void OnConnection(object application, Extensibility.ext_ConnectMode connectMode, object addInInst, ref System.Array custom) { applicationObject = application; addInInstance = addInInst; if(connectMode != Extensibility.ext_ConnectMode.ext_cm_Startup) { OnStartupComplete(ref custom); }}

OnDisconnection public void OnDisconnection(Extensibility.ext_DisconnectMode disconnectMode, ref System.Array custom) { if(disconnectMode != Extensibility.ext_DisconnectMode.ext_dm_HostShutdown) { OnBeginShutdown(ref custom); } applicationObject = null; }

OnAddInsUpdate + OnStartupComplete public void OnAddInsUpdate(ref System.Array custom){ } public void OnStartupComplete(ref System.Array custom) { CommandBars oCommandBars; CommandBar oStandardBar; try{ oCommandBars = (CommandBars)applicationObject.GetType().InvokeMember("CommandBars ", BindingFlags.GetProperty, null, applicationObject,null); }catch(Exception) { … } ………………}

OnBeginShutdown public void OnBeginShutdown(ref System.Array custom) { object omissing = System.Reflection.Missing.Value ; object omissing = System.Reflection.Missing.Value ; System.Windows.Forms.MessageBox.Show( "MyAddin1 Add-in is unloading."); System.Windows.Forms.MessageBox.Show( "MyAddin1 Add-in is unloading."); MyButton.Delete(omissing); MyButton.Delete(omissing); MyButton = null; MyButton = null;}

Wo befindet sich ein COM-Add-In und wie entferne ich es? Wie schon erklärt kann an über VB.Net COM- Add-Ins erstellen und umgehend einbinden Um es zu entfernen kann man es entweder im jeweiligen Officeprogramm abwählen oder man ändert den Schlüssel im jeweiligen Verzeichnis der Registrierung: Wert von LoadBehaviour auf 0 setzten Wert von LoadBehaviour auf 0 setzten

Probleme Änderung des Ladeverhaltens gibt unterschiedliche Ergebnisse: Änderung des Ladeverhaltens gibt unterschiedliche Ergebnisse: PowerPoint und Access Button ist nicht mehr vorhanden PowerPoint und Access Button ist nicht mehr vorhanden Outlook und Word Button weiterhin vorhanden Outlook und Word Button weiterhin vorhanden Nach Löschen des Registrierungsschlüssels besteht der Button in der Symbolleiste weiter Nach Löschen des Registrierungsschlüssels besteht der Button in der Symbolleiste weiter Das erstellte COM-Add-In erscheint nicht in der vorgesehenen Liste Das erstellte COM-Add-In erscheint nicht in der vorgesehenen Liste Löschen des COM-Add-Ins vom Computer Löschen des COM-Add-Ins vom Computer

Probleme Referenzen muss man manuell einfügen, werden nicht abhängig von der Angabe bei Erstellung eingebunden Referenzen muss man manuell einfügen, werden nicht abhängig von der Angabe bei Erstellung eingebunden Um COM-Add-In über Netzwerklaufwerke zu nutzen muss man Laufwerk als sicher ausweisen Um COM-Add-In über Netzwerklaufwerke zu nutzen muss man Laufwerk als sicher ausweisen Für die Installation auf anderen Rechnern sind weitere Programme und Schritte notwendig (odc_comshim) Für die Installation auf anderen Rechnern sind weitere Programme und Schritte notwendig (odc_comshim) Literatur zu allgemein Literatur zu allgemein

Links I Gesamtüberblick auf unserer Page (download page): Gesamtüberblick auf unserer Page (download page): (wenn ihr diesem Link folgt braucht ihr die letzten Folien nicht mehr lesen) (wenn ihr diesem Link folgt braucht ihr die letzten Folien nicht mehr lesen) HOW TO: Build an Office COM Add-in by Using Visual C#.NET HOW TO: Build an Office COM Add-in by Using Visual C#.NET HOW TO: Build an Office COM Add-in by Using Visual C#.NET HOW TO: Build an Office COM Add-in by Using Visual C#.NET Gutes Step by Step Beispiel das funktioniert, der Lerneffekt ist sehr gering, keine gute Ausgangsbasis. Vielleicht als Einstieg OK, dann weiter mit: Gutes Step by Step Beispiel das funktioniert, der Lerneffekt ist sehr gering, keine gute Ausgangsbasis. Vielleicht als Einstieg OK, dann weiter mit: Developing.NET Smart Clients for Microsoft Office XP (mshelp) Developing.NET Smart Clients for Microsoft Office XP (mshelp) Developing.NET Smart Clients for Microsoft Office XP (mshelp) Developing.NET Smart Clients for Microsoft Office XP (mshelp) Developing.NET Smart Clients for Microsoft Office XP (msdn) Developing.NET Smart Clients for Microsoft Office XP (msdn) Developing.NET Smart Clients for Microsoft Office XP (msdn) Developing.NET Smart Clients for Microsoft Office XP (msdn) Ein gutes einführendes Beispiel zum erstellen eines COM-Add-Ins in C#, Studio.NET mit grundlegender Einführung in die Thematik. Zeigt ein Hello World Beispiel und wie man debuggen kann. Erklärt den Zusammenhang zwischen.Net, Office und dem Com-Add-In. Ein gutes einführendes Beispiel zum erstellen eines COM-Add-Ins in C#, Studio.NET mit grundlegender Einführung in die Thematik. Zeigt ein Hello World Beispiel und wie man debuggen kann. Erklärt den Zusammenhang zwischen.Net, Office und dem Com-Add-In. Zeigt den Weg zum installieren und deinstallieren des Com-Add-Ins über einen MSI-Installer und hinzufügen und entfernen von Programmen. Wenn man ein Com-Add-In auf diese weise entfernt, sind später die Menü-Einträge noch vorhanden. (ohne Funktionalität) Es hilft: Extras Anpassen und dort bei den Symbolleisten der Button Zurücksetzen. Eventuelle Einträge in der Symbolleiste Standard verschwinden nach dieser Aktion. Zeigt den Weg zum installieren und deinstallieren des Com-Add-Ins über einen MSI-Installer und hinzufügen und entfernen von Programmen. Wenn man ein Com-Add-In auf diese weise entfernt, sind später die Menü-Einträge noch vorhanden. (ohne Funktionalität) Es hilft: Extras Anpassen und dort bei den Symbolleisten der Button Zurücksetzen. Eventuelle Einträge in der Symbolleiste Standard verschwinden nach dieser Aktion. Der XML-Web Service funktioniert nicht wie beschrieben. Die Reference zum Server hat sich geändert. Man bekommt ein Zip-File zum Runterladen. Danach steht man vor der Problematik, wie man den Service für den InternetInformationServer installieren kann. Ich hatte dann Probleme mit den Usern und der Berechtigung auf meiner Maschine und konnte deswegen nicht weiter testen. Der XML-Web Service funktioniert nicht wie beschrieben. Die Reference zum Server hat sich geändert. Man bekommt ein Zip-File zum Runterladen. Danach steht man vor der Problematik, wie man den Service für den InternetInformationServer installieren kann. Ich hatte dann Probleme mit den Usern und der Berechtigung auf meiner Maschine und konnte deswegen nicht weiter testen.

Links II Office Automation and Digital Certificates Demonstration Office Automation and Digital Certificates Demonstration Office Automation and Digital Certificates Demonstration Office Automation and Digital Certificates Demonstration Automation is defined as running code from one host application in order to use the functionality of another application. For example, as you'll see in this article, you can run Visual Basic® for Applications (VBA) code from Microsoft Outlook that opens an instance of Microsoft Excel, processes data in an Excel workbook, closes the instance of the workbook, and then uses the Excel output, all from inside Outlook. In this scenario, the controlling application (Outlook) works with the controlled application (Excel) by manipulating its exposed properties, methods, and objects. To accomplish this, Outlook just needs a reference to Excel's object library in order to create an instance of the workbook application. Automation is defined as running code from one host application in order to use the functionality of another application. For example, as you'll see in this article, you can run Visual Basic® for Applications (VBA) code from Microsoft Outlook that opens an instance of Microsoft Excel, processes data in an Excel workbook, closes the instance of the workbook, and then uses the Excel output, all from inside Outlook. In this scenario, the controlling application (Outlook) works with the controlled application (Excel) by manipulating its exposed properties, methods, and objects. To accomplish this, Outlook just needs a reference to Excel's object library in order to create an instance of the workbook application. A Primer to the Office XP Primary Interop Assemblies A Primer to the Office XP Primary Interop Assemblies A Primer to the Office XP Primary Interop Assemblies A Primer to the Office XP Primary Interop Assemblies Learn how to use the Office XP Primary Interop Assemblies to extend and automate Office XP features from Microsoft Visual Studio.NET code projects. (15 printed pages) Learn how to use the Office XP Primary Interop Assemblies to extend and automate Office XP features from Microsoft Visual Studio.NET code projects. (15 printed pages) Deployment of Managed COM Add-Ins in Office XP Deployment of Managed COM Add-Ins in Office XP Deployment of Managed COM Add-Ins in Office XP Deployment of Managed COM Add-Ins in Office XP Sicherheit in Office XP Sicherheit in Office XP Managed -Unmanaged Code Managed -Unmanaged Code Shim-Proxi Shim-Proxi Deployment Deployment

Links III HOW TO: Binding for Office Automation Servers with Visual C#.NET HOW TO: Binding for Office Automation Servers with Visual C#.NET HOW TO: Binding for Office Automation Servers with Visual C#.NET HOW TO: Binding for Office Automation Servers with Visual C#.NET VS.NET Beispiel mit Zugriff auf Excel Objekte VS.NET Beispiel mit Zugriff auf Excel Objekte Frühes und spätes Binden des application's objects Frühes und spätes Binden des application's objects The Microsoft.NET Framework Community The Microsoft.NET Framework Community Converting Microsoft Office VBA Macros to Visual Basic.NET and C# Converting Microsoft Office VBA Macros to Visual Basic.NET and C# Converting Microsoft Office VBA Macros to Visual Basic.NET and C# Converting Microsoft Office VBA Macros to Visual Basic.NET and C# how to migrate an Office VBA macro to.NET, specifically Visual Basic.NET and C#, and then how to transform that solution into a Visual Basic.NET managed COM add-in. (32 printed pages) how to migrate an Office VBA macro to.NET, specifically Visual Basic.NET and C#, and then how to transform that solution into a Visual Basic.NET managed COM add-in. (32 printed pages) Programming Microsoft Outlook with Visual Studio.NET (microeye.com) Programming Microsoft Outlook with Visual Studio.NET (microeye.com) Programming Microsoft Outlook with Visual Studio.NET (microeye.com) Programming Microsoft Outlook with Visual Studio.NET (microeye.com) Linkliste zu interessanten Artikeln für VS.NET Entwickler, die Outlook Applikationen entwerfen möchten. Linkliste zu interessanten Artikeln für VS.NET Entwickler, die Outlook Applikationen entwerfen möchten. VS.NET Objektbrowser VS.NET Objektbrowser Im VS Solution-Explorer bei References: Doppelklicken auf die hinzugefügte Outlook-Reference startet den Objekt Browser. Viel Spass!!! Im VS Solution-Explorer bei References: Doppelklicken auf die hinzugefügte Outlook-Reference startet den Objekt Browser. Viel Spass!!!

??? Fragen ???