Laden...

Fehler bei Installation von PIA

Erstellt von IngoKo vor 13 Jahren Letzter Beitrag vor 13 Jahren 2.138 Views
I
IngoKo Themenstarter:in
1 Beiträge seit 2009
vor 13 Jahren
Fehler bei Installation von PIA

Moin,
ich hatte gehofft das ich auf einen Server, auf den meine ASP .Net Anwendung läuft,
durch die Installation von PIA mein Word Template durch die anwendung befüllen kann.
Bei der Installation von PIA kommt die Meldung das ich erst Office installieren soll.
Das wollte ich eigentlich umgehen.

Hat jemand von euch ein Tipp?

Gruß,
Ingo

Ingo

3.728 Beiträge seit 2005
vor 13 Jahren
Böse

Hallo IngoKo,

Die PIAs sind nur .NET Wrapper für das COM-Objektmodell von Office. Office muss natürlich trotzdem installiert sein.

Aber unabhängig davon: OFFICE GEHÖRT NIEMALS AUF EINEN SERVER!

BÖSE! JEHOVA!

Du kannst die XML-Formate verwenden, um auf dem Server Office-Dokumente zu erstellen und zu bearbeiten, ohne dass Office installiert sein muss.

Schau mal hier:
http://dotnet-snippets.de/dns/excel-export-ohne-excel-auch-fuer-web-SID632.aspx
http://www.carlosag.net/Tools/ExcelXmlWriter/
http://msdn.microsoft.com/en-us/library/aa212812%28office.11%29.aspx

Gelöschter Account
vor 13 Jahren

OFFICE GEHÖRT NIEMALS AUF EINEN SERVER

Blöde Frage: Warum ? Verbietet das die Lizenz? schulterzuck

3.728 Beiträge seit 2005
vor 13 Jahren

Mit der Lizenz hat das nichts zu tun (Natürlich wird für jeden Benutzer, der Funktionen einer Office-Lizenz verwendet auch eine Lizenz benötigt; Aber das wäre ja auch bei der Installation auf einem Webserver kein Problem).

Warum ich sage, dass es böse ist, hat technische Gründe. Office-Anwendungen sind COM-Anwendungen und unterstützen kein Multithreading! Da ein Webserver aber viele Anfragen "gleichzeitig" verarbeiten kann und jede Anfrage in einem separaten Thread abgearbeitet wird, steht Multithreading bei ASP.NET auf jeden Fall auf dem Plan. Es sei denn jede Anfrage öffnet ihre eigene Instanz der jeweiligen Office-Installation. Das wäre aber auch sehr bedenklich und der Skalierbarkeit nicht unbedingt zuträglich, wenn für jede Anfrage auf dem Webserver z.B. eine eigene Excel-Instanz geladen werden müsste.

Das könnte man aber mit schnellen Festplatten und viel Arbeitsspeicher am Server ausgleichen.

Das größte Hinterdins für einen Server-Einsatz ist aber, dass Office-Anwendungen nicht für die unbeafsichtigte Automatisierung entworfen wurden. Man kann Office-Anwendunegn zwar über ihr COM-Objektmodell fernsteuern, aber das ändert nichts an der Tatsache, dass die Anwendung an einigen Stellen auf Eingaben vom Benutzer wartet (z.B. Meldungsfenster, Dialoge, etc.). Auf einem Webserver ist aber keiner da, der den OK-Button eines solchen Dialoges anklickt. Ein Beispiel dafür sind z.B. Hinweismeldungen bei Word-Serienbriefen.

Der Einsatz von Office auf einem Webserver ist deshalb nicht empfehlenswert.

Vor allem weil es andere Lösungsansätze gibt, die sehr gut funktionieren.

Gelöschter Account
vor 13 Jahren

achso.
ich habe vermutet die office installation verlangsamt das system drastisch in irgendeiner weise. ja das man office so nicht nutzt ist klar, allerdings kenne ich in der realität beispiele wo das trotzdem so gemacht wird weil leute die keinen peil
haben einen dazu zwingen das so umsetzen. 🙁

3.728 Beiträge seit 2005
vor 13 Jahren

... einen dazu zwingen das so umsetzen. 😦

Diese Leute sind meinst empfänglich für betriebswirtschaftliche Argumente. Mit ein bischen Fingerspitzengefühl lässt sich das meistens geradebiegen.

Es ist meistens kontraproduktiv sich mit technischen Argumenten geradeheraus gegen Entscheidungsträger zu stellen. Besser ist es auch sie einzugehen und zu versuchen die Dinge aus ihrer Sicht zu sehen. Für schwachsinnige Entscheidungen gibt es meistens einen Grund, der aber nicht immer offen ausgesprochen wird. Als Entwickler sollte man sich auch etwas auf Diplomatie verstehen und auch mal als Manager denken können.