Laden...

[erledigt] Word 2010 AddIn auf anderem PC nutzen

Erstellt von NeueWelt vor 11 Jahren Letzter Beitrag vor 11 Jahren 6.943 Views
N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren
[erledigt] Word 2010 AddIn auf anderem PC nutzen

Hallo,

Ich habe über Visual Studio 2010 ein Word 2010 AddIn erstellt.

Dieses wird auf meinem PC automatisch bei Word zu den COM-AddIns hinzugefügt.

Aber wie kann ich das ich jetzt auf einem anderen PC hinzufügen, z.b. auf dem von meinem Bruder?

Wenn ich COM-AddIns bei mir schaue hab ich den pfad der in die "...bin/Debug/Programm.vsto|vstolocal".

Gut dacht ich, nehm ich die Datei stell sie aufs Netzlaufwerk und mein Bruder kann die dann als Office-AddIn einfügen.
Aber die Datei gibt es gar nicht in dem Verzeichnis, es gibt nur Programm.dll und die ist kein gültiges AddIn.

Wie kann ich also das AddIn auch bei ihm nutzen?

danke,

mfg

Gelöschter Account
vor 11 Jahren

Du musst ein Setup Projekt erstellen was üblicherweise bei einem VSTO Addin Projekt gleich automatisch miterstellt wird. Das Setup muss dann auf dem Zielrechner ausgeführt werden(unterste Grundlagen) und alle notwendigen Schritte wie Registrierung werden dann von dieser Installation erledigt. Müssig zu erwähnen das Office keine Erweiterungen vom Netzlaufwerk nachlädt, mehr noch die .NET Runtime lädt sie erst garnicht.

[FAQ] Anwendung von Netzlaufwerk starten

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

Danke,

ok also Setup Projekt,

wo wird das erstellt?
und wie kann ich das selbst erstellen?

Edit: Ok, ich kann zum AddIn Projekt ein Setup-Projekt hinzufügen,
aber wenn ich das dann die dll, die von dem AddIn erzeugt wird zuordne und den Setup starte kommt wieder eine dll raus und kein AddIn.

mfg

Gelöschter Account
vor 11 Jahren

Aber die .dll ist doch dein Addin X(

Ich habe mal bei Google "VSTO Setup Projekt" eingegeben und praktisch alle Suchergebnisse unter den ersten 20 sind hilfreich.

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

Ich weiß doch das die .dll das AddIn ist^^ auch wenns vll nicht so rüber kam

es geht darum das ich die dll nicht unter office als AddIn einbinden kann.

da kommt dann .dll ist kein gültiges AddIn.

Deswegen braucht man dann den Setup, oder bin ich da jetzt total falsch?

So, und diesen Setup klick ich dann auf dem anderen PC an, und dadurch wird das AddIn Installiert.

So weit wär ich ja jetzt, beim Installieren erhalte ich auf dem anderen PC die .dll.

Aber die kann ich nich bei den AddIns hinzufügen, also was muss ich da noch machen?

mfg

Gelöschter Account
vor 11 Jahren

Ein Addin muss auf dem Zielsystem registriert werden, dazu sind verschiendenste Einstellungen nötig. Mein Eindruck ist das du an diesen Details und den Gründen dahinter garnicht sonderlich interesssiert bist daher rate ich dir folgendes:
Erstelle ein neues VSTO Addin Projekt, es wird automatisch ein Setup Projekt für dich miterstellt das die notwendigen Einstellungen vornimmt. Kopiere den Code aus dem alten Projekt in das neue Projekt. Führe jetzt einen ReleaseBuild|All durch. Kopiere die generierte .msi und .exe Datei aus dem Setup Projekt auf das Zielsystem und führe die .msi Datei aus. (Die .msi Datei hat nur die Aufgabe zu prüfen ob der Windows Installer Service in der richtigen Version auf dem Zielsystem installiert ist, diesen fallweise zu updaten, und danach die .exe Datei auszuführen)

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

ahhh, mir geht ein Lich auf xD

du meinst Gemeinsames AddIn, ich rede von Office 2010 AddIn

bei dem gemeinsamen wird tatsächlich ein Setup gleich generiert, beim Office 2010 nicht.

das sieht dann schon wieder viel komplizierter aus...

mfg

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

Ok,

mit dem gemeinsamen AddIn funtktioniert alles so wie geplant, Der Setup wird erstellt und bei installation des setups auf einem anderen pc wird das AddIn geladen und hinzugefügt.

liegt wohl an der Extensibility-schnittstelle die im Word-AddIn nicht vorhanden ist.

Jetzt muss ich mal schaun ob ich diese Schnittstelle irgendwie in mein Word-AddIn implementieren kann, oder ob ich den Code aus dem word-addin in mein gemeinsames AddIn implementiere.

Enfach kopieren geht nicht, da ich das activeDocument in Application verwende und kann bei gemeinsamen AddIn nicht drauf zugreifen.

Kann man bei dem AddIn einstellen, das es nur bei öffnen eines bestimmten Dokumentes geladen wird?

mfg

Gelöschter Account
vor 11 Jahren

Also jetzt muss ich irgendwie einiges erklären.
Das "gemeinsame Addin" ist ein Addin auf der quasi COM Basisschnittstelle von Office.
Für ein solches Addin ist es notwendig das IExtensibility2 Interface zu implementieren das du in der Dialogbox der Verweiseigenschaften auch findest (nennt sich gewöhlich extensibility2 oder so). Darüber hinaus musst du 2 statische Register/Unregister Funktionen definieren. In diesen Methoden bist du selbst dafür verantwortlich dein Addin in der Registry zu registrieren.

Das was du bisher verwendest hast ist ein VSTO(Visual Studio Tools for Office) Addin. VSTO besteht aus einer Runtime die du ebenfalls auf dem Zielsystem installieren musst und diversen Zustatztools/Visual Studio Addins und Vorlagen. Der primäre Vorteil ist das VSTO dich von wesentlichen manuellen Aufgaben wie Registrung und Co befreit für die man einfach auch die notwendige Kentniss haben muss. Darüber hinaus bietet VSTO auch tolle Designer d.h. die (verhasste)Ribbon UI visuell zu erweitern.

Ich rate dir in deinem Fall dringend bei VSTO zu bleiben und das mit dem "Gemeinsamen Addin" (original "Shared Addin") zu vergessen. Was ich nicht verstehe ist das du bei einem VSTO Addin kein Setup Projekt generiert bekommst. Welche Visual Studio Version verwendest du? In der About Box von Visual Studio werden die alle geladenen Extensions angezeigt. Welche VSTO Version siehst du da?

Sebastian

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

Also,

Microsoft Visual Studio 2010 Professional
Version 10.0.40219.1 SP1Rel

Erstellen tu ichs folgendermaßen:

  • Visual C#
  • Office
  • 2010
  • Word 2010 AddIn

mfg

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

So,

habe mit folgender Anleitung mein Setup Projekt erstellt:
http://msdn.microsoft.com/en-us/library/ff937654.aspx (nur word anstatt excel)

Das AddIn erschein jetzt auch bei den anderen PCs unter COM-AddIns und in der Registry.

Aber es kann nicht geladen werden.
Es kommt pc mit word 2010:
"Während des Ladens des COMAddIns ist ein Fehler aufgetreten"

oder bei einem pc mit word 2007:
Das Ladeprogramm für verwaltete AddIns konnte nicht initialisiert werden"

Debuggen nützt wohl nichts weil nicht mal zur ersten MessageBox am einstiegspunkt kommt.

irgendwelche ideen?

danke,

mfg

N
NeueWelt Themenstarter:in
54 Beiträge seit 2011
vor 11 Jahren

Mittlerweile hab ichs dann doch irgendwie hinbekommen,

und zwar:

  • Genau auf die Pfade achten wo der Setup die Dateien installiert und wie das in der Registry angelegt ist(das sollte übereinstimmen)

  • Wichtig ist das alle Vorraussetzungen also z.b. office PIA oder Visual studio office Tools auf den PCs installiert sind

  • Wenn man glaubt es passt alles aber es geht trotzdem nicht, auf dem PC mal die .VSTO Datei ausführen

Es funktioniert bei mir jetzt unter 2007 und 2010.

Danke an Sebastian

mfg