|
| » myCSharp.de Diskussionsforum |
|
|
|
|
Autor
 |
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
|
|
Fragen zur Entwicklung mit NetOffice z.B. wie sende ich eine E-Mail oder wie öffne ich ein Word Dokument bitte im Forum Office-Technologien und nicht hier.
NetOffice - .NET Wrapper Assemblies für den Zugriff auf Microsoft Office, Excel, Word, Outlook, PowerPoint, Access
http://netoffice.codeplex.com
- Office Integration ohne Versionsbeschränkung
- Alle Objekte, Methoden, Properties und Events der Office Versionen 2000, 2002, 2003, 2007, 2010 enthalten
- Attribute Konzept und XML Source Doku zur Information welche Office Version(en) die jeweilige Methode oder Property anbietet (siehe angehängtes Bild)
- Syntaktisch und semantisch identisch zu den Interop Assemblies
- Reduzierter und besser lesbarer Code durch automatische Verwaltung von COM Proxies
- Keine Deployment Hürden, keine problematische Registrierung, keine Abhängigkeiten, keine Interop Assemblies, kein VSTO notwendig
- Mit jeder .NET Version ab 2.0 verwendbar
- Problemlose Addin Entwicklung
- Dokumenation und Beispielprojekte inkl. Addins für alle Office Produkte in C# und VB.NET auch online verfügbar
Beispielcode für die Erstellung eines neuen TaskItem in Outlook(Example02.csproj)
C#-Code: |
LateBindingApi.Core.Factory.Initialize();
Outlook.Application outlookApplication = new Outlook.Application();
Outlook.TaskItem newTask = outlookApplication.CreateItem(OlItemType.olTaskItem) as Outlook.TaskItem;
newTask.Subject = "check for NetOffice.DeveloperToolbox updates";
newTask.Body = "check updates here: http:
newTask.DueDate = DateTime.Now;
newTask.Importance = OlImportance.olImportanceHigh;
newTask.Save();
outlookApplication.Quit();
outlookApplication.Dispose();
|
Fragen, Kritik, Verbesserungsvorschläge und Bug Reports sind natürlich sehr willkommen.
Schlagwörter: Office Excel Word Outlook PowerPoint Access
Screenshot: IntelliSense Unterstützung in C# für Versionsinformation eines Property.
Sebastian.Lange hat dieses Bild angehängt:

Dieser Beitrag wurde 6 mal editiert, zum letzten Mal von Sebastian.Lange am 04.11.2011 07:26.
|
|
26.05.2011 15:28
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
..Heinz..
myCSharp.de-Mitglied
Dabei seit: 06.05.2009
Beiträge: 129
|
|
Hallo Sebastian,
habe NetOffice getestet und finde es super :-) Richtig schnell und im Vergleich zum normalen LateBinding einfach zu programmieren.
Was evtl. noch fehlt, ist eine Signierung der DLLs.
|
|
01.06.2011 08:24
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Marsti
myCSharp.de-Mitglied
Dabei seit: 02.05.2009
Beiträge: 114
Entwicklungsumgebung: Visual Studio
|
|
Klingt sehr gut. Gibt es auch die Möglichkeit beim Erstellen anzugeben, welche (minimale/exakte) Application-Version verwendet werden soll?
Also für den Fall, dass mehrere Installiert sind und man sich daher nicht sicher sein kann, dass gerade die gewünschte Version als Standardanwendung eingetragen ist.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Marsti am 03.06.2011 06:48.
|
|
03.06.2011 06:42
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
MagicAndre1981
myCSharp.de-Mitglied
Dabei seit: 16.05.2005
Beiträge: 906
Entwicklungsumgebung: Visual Studio 2005 Prof/ #d2.1 Herkunft: Nordhausen
|
|
danke das schaue ich mir mal an.
Wie sieht es mit 32/64Bit (AnyCPU) Kompatibilität aus? Was muss man da alles beachten?
|
|
03.06.2011 18:44
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
Hallo MagicAndre,
Guter Punkt!
Ich erstelle gerade einen kleinen Guide bzw. kurze Übersicht zu dem Thema.
Release 0.9 (Beta) wird auch x64 Assemblies für alle .NET Versionen ab .NET 2.0 enthalten. Das Release erscheint in der Nacht vom 5. zum 6. Juni also spätestens kommenden Montag morgen ;) UPDATE: Seperate Assemblies für andere Plattformen sind nicht nötig. NetOffice funktioniert auch plattformunabhängig.
Hallo Marsti,
Ja, du kannst dem Application Objekt im Constructor die gewünschte ProgId übergeben und damit eine spezifische Version starten.
Sebastian
Edit: Das Release wird sich wohl verzögern da sich Office x64 prinzipiell nicht auf WindowsXP(x64) installieren lässt und ich kein anderes System zu Hause habe. Schade.
Dieser Beitrag wurde 5 mal editiert, zum letzten Mal von Sebastian.Lange am 04.11.2011 07:30.
|
|
03.06.2011 21:01
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
..Heinz..
myCSharp.de-Mitglied
Dabei seit: 06.05.2009
Beiträge: 129
|
|
| Zitat von Sebastian.Lange: |
| Die Signierung ist eine sinnvolle Option für eine Version 1.0 denke ich. |
Das wäre super 
Wäre schade, wenn man die DLL nicht in signierten Projekten einsetzen könnte, denn die Komponente ist super.
|
|
07.06.2011 08:01
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
MagicAndre1981
myCSharp.de-Mitglied
Dabei seit: 16.05.2005
Beiträge: 906
Entwicklungsumgebung: Visual Studio 2005 Prof/ #d2.1 Herkunft: Nordhausen
|
|
ah, noch etwas. Wird es das Projekt auch als NuGet Paket geben?
@Sebastian.Lange
installiere die 90 Tage Win7 x64 Trial, da kannst du es testen.
|
|
07.06.2011 15:46
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
MagicAndre1981
myCSharp.de-Mitglied
Dabei seit: 16.05.2005
Beiträge: 906
Entwicklungsumgebung: Visual Studio 2005 Prof/ #d2.1 Herkunft: Nordhausen
|
|
ok, ich spiele nun etwas damit rum.
Eine Frage. Warum packst du die große RAR immer mit in die Quellcodeverwaltung?
|
|
09.06.2011 15:14
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
MagicAndre1981
myCSharp.de-Mitglied
Dabei seit: 16.05.2005
Beiträge: 906
Entwicklungsumgebung: Visual Studio 2005 Prof/ #d2.1 Herkunft: Nordhausen
|
|
| Zitat von Sebastian.Lange: |
| Du meinst das Release Tag? |
ja, ich will nur den trunk. Kannst du die Quellcodeverwaltung aufsplitten in trunk, tags, branches und dann wenn du eine Version fertig hast erstellst du einen Tag und keine RAR? SVN und große Dateien ist nicht wirklich schnell. TSVN kackt öfters mal ab und ich muss aufräumen und nochmals updaten.
|
|
10.06.2011 16:39
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
ManiacViper
myCSharp.de-Mitglied
Dabei seit: 09.02.2006
Beiträge: 5
Entwicklungsumgebung: Visual Studio 2005 Std. Herkunft: Dresden
|
|
Hallo,
lassen mit NetOffice auch die Office-Anwendungen in die eigene Applikation einbetten?
Ich muss für ein aktuelles Projekt Excel-Dateien innerhalb meiner Anwendung anzeigen. Bisher habe ich es mit einem WebBrowser-Control versucht. Dies funktioniert jedoch ohne Änderung an der Registry nicht richtig.
Daniel
|
|
14.06.2011 09:35
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Spontifixus
myCSharp.de-Mitglied
Dabei seit: 06.09.2005
Beiträge: 360
Entwicklungsumgebung: VisualStudio 2008/2010 Herkunft: Hannover
|
|
Hallo Sebastian,
coole API - ich brauche sie gerade wieder für ein kleines Projekt. Vielen Dank dafür!
Und (wie könnte es anders sein) dazu gleich eine Frage. Ich muss mit meinem Programm große Datenmengen (>50.000 Zeilen, 6 Spalten) in Excel importieren. Wenn ich die händisch (Zelle für Zelle) hinzufüge dauert das ewig.
Gibt es eine Möglichkeit das zu beschleunigen, beispielsweise über einen CSV-Import?
EDIT: Da habe ich wohl nicht klar genug formuliert. Die Frage bezieht sich ganz konkret auf die netoffice-API: Ist ein CSV-Import mit dieser API möglich? Und wenn ja, wie?
Viele Grüße,
Markus :)
Moderationshinweis von herbivore (27.06.2011 16:53):
Bitte die Frage nur in direktem Bezug zu "NetOffice - Ein versionsunabhängiger Wrapper für MS-Office" beantworten, denn wir sind hier in ".NET-Komponenten und C#-Snippets" und nicht in "Entwicklung".
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Spontifixus am 27.06.2011 17:43.
|
|
27.06.2011 16:18
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
mrbob
myCSharp.de-Mitglied
Dabei seit: 26.11.2010
Beiträge: 46
|
|
Moin moin,
die API hört sich Interessant an. Leider bin ich noch nicht dazugekommen sie mal zu testen.
Aber eine Frage habe ich schon. Muss auf dem Zielrechner des Anwenders Office installiert sein?
Mfg.
Mr. Bob
|
|
29.06.2011 16:28
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Taipi88
myCSharp.de-Mitglied
Dabei seit: 02.02.2010
Beiträge: 239
Entwicklungsumgebung: VS 2010 Herkunft: Mainz
|
|
Hallo,
ja - Office muss installiert sein - die API ist "nur" eine LateBinding-Wrapper um
die OfficeAPI - Vorteil: Es muss keine bestimmte Office-Version installiert sein.
Es handelt sich dabei nicht um eine vollständig neue Implementierung der OfficeAPI
LG
Achim
|
|
30.06.2011 07:58
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
ChrDressler
myCSharp.de-Mitglied
Dabei seit: 23.05.2006
Beiträge: 162
Entwicklungsumgebung: VS2008 Pro, VS 2010 Herkunft: Sachsen
|
|
Genial!
Ich habe zwar nur Excel getestet, muss aber sagen: Hut ab! Auch allem wg. der vielen Arbeit, die ganzen Properties nachzubauen und alles so fein zu dokumentieren und zu "bebeispielen".
Nur zur Info: Ich habe bisher versucht:
- direktes COM: ist an Unterschieden zwischen den Excelversionen gescheitert
- Xml-Writer von CarlosAg: ein recht gutes Teil, wenn man nur schreiben will, läuft voll ohne Excel. Ich aber muss in bestehende Blätter schreiben, und da gibts Schwierigkeiten mit der Zelladressierung.
- Ado.Net: immer wieder Fehler "Installierbares Isam nicht gefunden" auf diversen Maschinen in freier Wildbahn.
-christoph
|
|
13.07.2011 21:57
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
Es gibt ein neues Release
NetOffice Release 1.1
Es behebt einen kritischen Fehler im Eventsystem von NetOffice.
Sie dazu Issue 16314
Der Support für MS-Project verzögert sich leider etwas da die Italiener ausgesprochen träge reagieren was die Tests betrifft.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Sebastian.Lange am 31.07.2011 17:40.
|
|
30.07.2011 22:29
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Spontifixus
myCSharp.de-Mitglied
Dabei seit: 06.09.2005
Beiträge: 360
Entwicklungsumgebung: VisualStudio 2008/2010 Herkunft: Hannover
|
|
Hallo Sebastian,
danke für den Hinweis, ich hab das wie von dir vorgeschlagen über Copy'n'Paste (CSV-Daten in die Zwischenablage kopieren und dann in den entsprechenden Bereich kopieren) gelöst. Das funktioniert extrem schnell.
Viele Grüße,
Markus :)
|
|
08.08.2011 17:07
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
seeba
myCSharp.de-Mitglied
Dabei seit: 25.12.2005
Beiträge: 69
Entwicklungsumgebung: Visual Studio 2010 Ultimate
|
|
Hallo Sebastian,
super Arbeit!
Kann man das "Speichern als PDF" auch über deinen Wrapper ausführen?
Grüße
ebenfalls Sebastian
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von seeba am 10.08.2011 14:02.
|
|
10.08.2011 14:02
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Taipi88
myCSharp.de-Mitglied
Dabei seit: 02.02.2010
Beiträge: 239
Entwicklungsumgebung: VS 2010 Herkunft: Mainz
|
|
Hallo,
diese Antwort übernehme ich dann einfach mal :P
NetOffice ist ein Wrapper - wenn etwas über das Objektmodell geht, dann kann es meines Wissens nach auch NetOffice.
Der einfachste Weg ist finde ich den "Makro-Recorder" anzuwerfen, die gewünschte Aktion durchzuführen und sich danach den VBA-Code anschauen,
wie ich es nachfolgend getan habe.
Der aufgenommene VBA-Code sieht so aus:
Code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
Sub ExportActiveDocAsPdf()
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"Dateiname.pdf", ExportFormat:=wdExportFormatPDF, _
OpenAfterExport:=True, OptimizeFor:=wdExportOptimizeForPrint, Range:= _
wdExportAllDocument, From:=1, To:=1, Item:=wdExportDocumentContent, _
IncludeDocProps:=True, KeepIRM:=True, CreateBookmarks:= _
wdExportCreateNoBookmarks, DocStructureTags:=True, BitmapMissingFonts:= _
True, UseISO19005_1:=False
End Sub |
|
Daraus macht man dann in C# beispielsweise folgendes:
C#-Code: |
newDocument.ExportAsFixedFormat(@"Dateipfad.pdf", WdExportFormat.wdExportFormatPDF,
false, WdExportOptimizeFor.wdExportOptimizeForPrint, WdExportRange.wdExportAllDocument, 1, 1,
WdExportItem.wdExportDocumentContent, true, true, WdExportCreateBookmarks.wdExportCreateNoBookmarks, true, true, false);
|
Eine lauffähige Version könnte dann so aussehen:
C#-Code: |
using NetOffice.WordApi.Enums;
using Word = NetOffice.WordApi;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
LateBindingApi.Core.Factory.Initialize();
Word.Application wordApplication = new Word.Application();
wordApplication.DisplayAlerts = WdAlertLevel.wdAlertsNone;
Word.Document newDocument = wordApplication.Documents.Add();
wordApplication.Selection.TypeText("This text is written by NetOffice");
newDocument.ExportAsFixedFormat(@"Dateipfad.pdf", WdExportFormat.wdExportFormatPDF,
false, WdExportOptimizeFor.wdExportOptimizeForPrint, WdExportRange.wdExportAllDocument, 1, 1,
WdExportItem.wdExportDocumentContent, true, true, WdExportCreateBookmarks.wdExportCreateNoBookmarks, true, true, false);
newDocument.Close(false, null, null);
wordApplication.Quit();
wordApplication.Dispose();
}
}
}
|
LG
Achim
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Taipi88 am 10.08.2011 14:24.
|
|
10.08.2011 14:22
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
Ab sofort verfügbar ist:
NetOffice Release 1.2
- IntelliSense zeigt nun zusätzlich für Properties "Get" oder "Get/Set"
- Unterstützung für MS-Project 2007 und 2010
- Deutliche Performance Verbesserung
Ein ausführlicher Performance Vergleich ist nun zusätzlich verfügbar:
Performance Vergleich: Interop, Dynamics, Visual Basic, NetOffice
Geplant für Release 1.3
- Unterstützung für ältere MS-Project Versionen
- Unterstützung für MS-Visio (wurde angefragt)
- Weitere Vorschläge durch Community Feedback willkommen
[offtopic]
Die fetten ReleaseTags im Quellcode habe ich entfernt.
[/offtopic]
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Sebastian.Lange am 22.08.2011 17:39.
|
|
21.08.2011 23:07
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
MagicAndre1981
myCSharp.de-Mitglied
Dabei seit: 16.05.2005
Beiträge: 906
Entwicklungsumgebung: Visual Studio 2005 Prof/ #d2.1 Herkunft: Nordhausen
|
|
danke, nun noch ein NuGet Package und ich bin glücklich. NuGet ist das beste was ist seit langen bei .Net gibt. Aktuell muss man sich deine Version laden, sie in seinem eigenen Projekt in einem Ordner einfügen sowie in die Versionskontrolle packen. Mit NuGet kann man sich das alles sparen.
|
|
22.08.2011 13:38
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
[offtopic]
Hallo,
Ich erkenne den sinvollen Grundgedanken von Nuget und bei den häufigen NetOffice Releases der letzten Zeit wäre das sicher sehr nützlich gewesen. Jedoch habe ich mich nach gründlichem Überlegen dazu entschlossen vorläufig kein Nuget Packet anzubieten da ich mit einigen Aspekten der technischen Umsetzung nicht einverstanden bin. Ich würde das Thema gerne in in einem extra Thread weiter diskutieren sofern du magst.
[/offtopic]
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Sebastian.Lange am 22.08.2011 20:49.
|
|
22.08.2011 20:49
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
| Zwischen diesen beiden Beiträgen liegt mehr als ein Monat. |
Diräkt
myCSharp.de-Mitglied
Dabei seit: 05.11.2009
Beiträge: 471
Entwicklungsumgebung: VS 2010 Herkunft: Schweiz
|
|
[noch mehr offtopic]
Hallo :)
Ich möchte einfach mal DANKE sagen ! Gute Arbeit ! :)
Beste Grüsse
Diräkt
[/noch mehr offtopic]
|
|
12.10.2011 22:53
|
E-Mail |
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
Ab sofort verfügbar ist die NetOffice Developer Toolbox.
Die Developer Toolbox ist ein Productivity Tool für den Office-Entwickler.
Es umfasst die folgenden Funktionalitäten:
- Office Compatibility
- Application Observer
- Registry Editor
- Addin Guard
- Outlook Security
Die Dokumenation befindet sich hier:
Developer Toolbox Online Dokumenation
Ich möchte die einzelnen Funktionen ganz kurz umschreiben.
Office Compatibility
Wer eine Office Lösung entwickelt die mit mehreren oder allen Office Versionen kompatibel sein muss, steht vor dem Problem das er nur die Funktionalitäten ansprechen darf die in allen unterstützen Versionen zur Verfügung stehen. NetOffice bietet daher als einzige API einen entsprechenden Hinweis als IntelliSense Text, während der Entwicklung an, von welcher Office Version die jeweilige Funktionalität unterstützt wird. Auch wenn dieses Feature eine grosse Hilfe darstellt, reicht es in der Praxis nicht aus um sicherzustellen das man mit allen Versionen einer Office Anwendung kompatibel ist. Die Office Compatibility Komponente führt eine statische Code-Analyse mit Hilfe von Mono.Cecil durch und analysiert Assemblies die NetOffice verwenden darauf mit welchen Office Versionen sie kompatibel sind. Eine entsprechende Übersicht hilft dem Entwickler die inkompatiblen Aufrufe zu identifizieren.
Application Observer
Wer über längere Zeit an grösseren Office Lösungen arbeitet kennt das Problem.
Ein Fehler triff auf, der Debugging Prozess wird abgebrochen, vorhandener Cleanup Code wird damit nicht ausgeführt. Die Instanz der Office Anwendung wird nicht beendet und verbleibt im Speicher. Schnell befinden sich innerhalb weniger Minuten viele dieser verwaisten Instanzen im Speicher die via Task-Manager entfernt werden müssen. Der Application Observer überwacht die Anzahl laufender Instanzen von ausgewählten Office Anwendungen und zeigt diese Information auf Wunsch als Tray-Icon an. Darüber hinaus kann man einen systemweiten Hotkey festlegen um diese Instanzen schnell und unkompliziert zu entfernen. Die Hotkey Klasse stammt dabei von MyCSharp. Vielen Dank an Floste. Einen entsprechenden Hinweis im Code und in der About Box habe ich natürlich nicht vergessen.
Registry Editor
Der Registry Editor ist ein technischer und optischer Klon des bekannten Windows Registry Editors. Er bietet jedoch nur die Schlüssel für MS-Office an. Nerviges scrollen wird dadurch überflüssig.
Addin Guard
Entwickler die COMAddins für eine Office Anwendung schreiben haben oft das Problem das Sie nicht sicher sind ob Ihr Addin ordnungsgemäss geladen wird.
Bei einem auftretenden Fehler, z.B. einer fehlenden Abhängigkeit setzen Office Anwendungen das Ladeverhalten von Addins komentarlos zurück oder markieren es als deaktiviert. Viele Entwickler bauen daher MessageBox Ausgaben in ihren Code und prüfen permanent mit nervösem Blick die Registry-Werte Ihres Addins.
Addin Guard schafft hier Abhilfe in dem es das Ladeverhalten von Addins also ihren Aktivierungsstatus überwacht und ein Meldungsfenster oder eine Tray-Benachrichtung anzeigt wenn sich das Ladeverhalten ändert. Auf Wunsch kann Addin Guard das Ladeverhalten auch direkt zurücksetzen.
Outlook Security
Ein Entwickler der MS-Outlook via COM ansprechen bzw. automatisieren möchte steht vor dem Problem das Outlook einen Security Dialog einblendet, der zur Autoriserung auffordert, wenn man auf bestimmte Teile des Objektmodells zugreift. Mit Einführung dieses Sicherheits-Features wurde sehr schnell ein Tool mit dem Namen ClickYes populär das im Hintergrund läuft und diesen Dialog automatisch bestätigt. Outlook Security tut es dem bekannten Tool ClickYes nach indem es diesen Dialog automatisch bestätigt und hat darüber hinaus noch einen weiteren Vorteil. Die tatsächliche Funktionalität ist in das beiliegende Assembly NetOffice.OutlookSecurity.dll ausgelagert. Wer möchte kann dieses Assembly nutzen oder den Source Code direkt einbinden. Ein Addin kann damit seine eigene ClickYes Funktionalität mitbringen und auf dem Zielsystem muss kein extra Tool installiert werden. Wie man das Assembly NetOffice.OutlookSecurity.dll nutzt ist in der Online Dokumentation beschrieben.
Zum Download gehts hier
Die Developer Toolbox benötigt das .NET 4 Framework.
Das Client Profile ist dabei ausreichend.
Sebastian.Lange hat dieses Bild (verkleinerte Version) angehängt:
 Volle Bildgröße
Dieser Beitrag wurde 5 mal editiert, zum letzten Mal von Sebastian.Lange am 24.10.2011 06:38.
|
|
24.10.2011 01:18
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
Sebastian.Lange
myCSharp.de-Poweruser/ Experte
Dabei seit: 22.06.2007
Beiträge: 915
Entwicklungsumgebung: Visual Studio 2008, 2010 Herkunft: Berlin
Themenstarter
|
|
Für die Toolbox gibt es ein Update(Version 0.8.2) das 2 Bugs in der Office Compatibility Komponente behebt. Der 1.Bug verursachte eine Fehlermeldung während der Assembly Analyse, der 2. Bug verursachte eine falsche Anzeige im Filter-Modus des anschliessenden Reports.
Edit: Gleich noch ein Update(Version 0.8.3) hinterher.
Die Office Compatibility Komponente hat jetzt 73 Test Assemblies erfolgreich passiert. In Version 0.9 wird der detailierte Report der Analyse übersichtlicher und ansprechender aussehen und darüber hinaus auch direkt speicherbar sein
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Sebastian.Lange am 04.11.2011 07:23.
|
|
02.11.2011 11:10
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
tom-essen
myCSharp.de-Poweruser/ Experte
Dabei seit: 15.05.2005
Beiträge: 1.756
Entwicklungsumgebung: VS.NET 2005 & 2008 Herkunft: NRW
|
|
Hallo!
Habe NetOffice heute auch mal getestet: Läuft wirklich toll.
Evtl. noch ein kleiner Hinweis:
Wenn man z.B. Application in einer using-Anweisung verwendet, erwarte ich, dass neben Dispose gegebenenfalls weitere Methoden (z.B. Quit) automatisch aufgerufen werden.
Zusätzlich sollte evtl. auch ein Destructor eingerichtet werden (siehe auch Dispose implementieren und verwenden (IDisposable)), welcher Dispose(false) aufruft.
Ich benutze zwar z.Zt. noch einen eigenen Wrapper, bin aber geneigt, auf NetOffice umzusteigen.
|
|
09.11.2011 11:11
|
Beiträge des Benutzers |
zu Buddylist hinzufügen
|
|
|
|