Vorlagenverteilung
Mit dieser Dokumentfunktion können verschiedene Objekte verteilt werden, so z. B. PDF-Dokumente, Bilder oder auch macro-basierte AddIns für Excel oder PowerPoint. Die Dokumentfunktion wird auch für Mail Themes mit den benötigten Styles in Mail-Vorlagen und -signaturen benötigt. In der folgenden Tabelle werden einige Elemente erklärt:
Tag | Erklärung |
---|---|
Path | Hier kann der Ablageort der betroffenen Datei gewählt werden. |
Lockfile | So kann verhindert werden, dass eine geöffnete Datei verändert wird. Dazu kann die betroffene Datei samt Endung angegeben werden. |
Merge | Es kann bestimmt werden, ob die Datei(en) bei einer Aktualisierung ersetzt, entfernt oder zusammengeführt werden soll(en). |
Die Dokumentfunktion steht exklusiv bei folgenden Vorlagentypen zur Auswahl: "Externe Datei für Verteilung" und "Mail Theme".
"Scriptable"
Die Vorlagenverteilung ist in der Lage, bestimmte System-Variablen auszulesen und so – je nach Umgebung – andere Dateien auszurollen. Das ist z. B. notwendig, um mit einem Office AddIn Paket verschiedene Office-Versionen zu unterstützen. Dabei kann auf das System der "Scriptable Configs" zurückgegriffen werden.
Das API-Objekt hat folgende Eigenschaften jeweils für Word, Excel, PowerPoint und Outlook:
Feld | Werte | Beschreibung |
---|---|---|
IsDetected | Boolean true / false |
Gibt zurück, ob das Office-Produkt installiert ist. |
Version | Integer |
Gibt die installierte Office-Version zurück. |
Is32Bit | Boolean true / false |
Gibt zurück, ob das Office-Produkt in der 32-bit Version installiert ist. |
Is64Bit | Boolean true / false |
Gibt zurück, ob das Office-Produkt in der 64-bit Version installiert ist. |
So gibt z. B. oo.Word.Version
die installierte Word-Version zurück, falls oo.Word.IsDetected
true
zurückgibt.
Office-Versionen
Office-Version | Office 'Jahreszahl' |
---|---|
14 | 2010 |
15 | 2013 |
16 | 2016/2019 |
Cleanup
Mittels Cleanup
können erstellte Registrywerte und Dateien/Ordner wieder gelöscht werden. Es stehen drei Befehle zur Verfügung:
<File Path="Path to File or Folder" />
Das löscht die Datei oder den Ordner (inkl. Unterordner). Es werden auch Wildcards unterstützt: d. h. mittels Path To Folder/*.txt
kann so z. B. nach Textdateien in einem bestimmtern Ordner gefiltert werden.
<RegistryKey Root="HKCU" Key="Path to registry key" View="Default|Registry32|Registry64" />
Das löscht den angegebenen Registrierungsschlüssel. View
kann weggelassen werden (Default Registry View).
<RegistryKey Root="HKCU" Key="Path to registry key" View="Default|Registry32|Registry64" Name="Valuename" />
Das löscht den angegebenen Wert in der Registry. View
kann weggelassen werden (Default Registry View).
Ausführungszeitpunkt:
Der Aufräumprozess wird ausgeführt:
- wenn OneOffixx deinstalliert wird.
- wenn OneOffixx mit
/clean
gestartet wird. - durch manuelles Starten im Vorlageneditor.
- oder beim Wechseln oder Zurücksetzen der Datenquelle.
Caution
- Für das Aufräumen muss OneOffixx die Vorlage im Cache besitzen – manuelles Löschen des Caches kann dazu führen, dass verteilte Vorlagen nicht mehr automatisch entfernt werden.
- Stellen Sie bei Änderungen sicher, dass auch ältere Versionen, die Sie früher ausgerollt haben, richtig aufgeräumt werden.
Beispiel
Folgende Konfiguration überprüft, dass es die richtige 32-bit bzw. 64-bit Version von einem PowerPoint AddIn registriert:
<Configuration>
<If Condition="oo.PowerPoint.Version == 15">
<Path>%APPDATA%\SomePowerpointAddin</Path>
<If Condition="oo.PowerPoint.Is32Bit">
<Registry>
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\SomePowerpointAddin\SomePowerpointAddin.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\SomePowerpointAddin" />
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin" />
</Cleanup>
</If>
<If Condition="oo.PowerPoint.Is64Bit">
<Registry>
<RegistryKey Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\SomePowerpointAddin\SomePowerpointAddin.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\SomePowerpointAddin" />
<RegistryKey Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin" />
</Cleanup>
</If>
</If>
</Configuration>
ergibt mit API Object: oo.PowerPoint.Version = 15
, oo.PowerPoint.Is32Bit = true
und oo.PowerPoint.Is64Bit = false
folgendes Resultat:
<Configuration>
<Path>%APPDATA%\SomePowerpointAddin</Path>
<Registry>
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\SomePowerpointAddin\SomePowerpointAddin.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\SomePowerpointAddin" />
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\SomePowerpointAddin" />
</Cleanup>
</Configuration>
Mail Theme für Outlook
Caution
Der Style-Name und der .dotx-Dateiname müssen übereinstimmen.
Um über die Dokumentfunktion ein Mail Theme auszurollen, ist folgende Konfiguration notwendig:
<?xml version="1.0" encoding="utf-8"?>
<Configuration SourceTemplateDocumentType="Zip">
<UpdateMode>ViaFiles</UpdateMode>
<Files>
<File Source="*.dotx" Target="%APPDATA%\Microsoft\QuickStyles\CompanyStyle.dotx" />
<File Target="%APPDATA%\Microsoft\QuickStyles\OneOffixxTheme.config">CompanyStyle</File>
</Files>
<Registry>
<RegistryFile>mailsettings.reg</RegistryFile>
</Registry>
</Configuration>
Das Mail-Theme ist immer abhängig von der installierten Outlook Version. Möchte man zwei verschiedene Outlook-Versionen unterstützen, muss das Mail Theme dupliziert und in der entsprechenden Outlook Version angepasst werden.
PowerPoint
Note
Die .ppam-Datei muss gezippt als "Fremdvorlage" importiert werden.
Um das OneOffixx PowerPoint AddIn auszurollen, ist folgende Konfiguration notwendig:
<Configuration>
<Path>%APPDATA%\OneOffixx\PowerPoint</Path>
<LockFile>%APPDATA%\OneOffixx\PowerPoint\OneOffixx.ppam</LockFile>
<!-- Office 2016/2019 -->
<If Condition="oo.PowerPoint.Version >= 16">
<If Condition="oo.PowerPoint.Is32Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\16.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\16.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
<If Condition="oo.PowerPoint.Is64Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\16.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\16.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
</If>
<!-- Office 2013 -->
<If Condition="oo.PowerPoint.Version == 15">
<If Condition="oo.PowerPoint.Is32Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
<If Condition="oo.PowerPoint.Is64Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\15.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
</If>
<!-- Office 2010 -->
<If Condition="oo.PowerPoint.Version == 14">
<If Condition="oo.PowerPoint.Is32Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\14.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx_O2010.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry32" Key="Software\Microsoft\Office\14.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
<If Condition="oo.PowerPoint.Is64Bit">
<Registry>
<RegistryKey Action="CreateAndUpdate" Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\14.0\PowerPoint\AddIns\OneOffixx">
<RegistryValue Type="String" Name="Path" Expand="true">%APPDATA%\OneOffixx\PowerPoint\OneOffixx_O2010.ppam</RegistryValue>
<RegistryValue Type="DWord" Name="AutoLoad">00000001</RegistryValue>
</RegistryKey>
</Registry>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\PowerPoint" />
<RegistryKey Root="HKCU" View="Registry64" Key="Software\Microsoft\Office\14.0\PowerPoint\AddIns\OneOffixx" />
</Cleanup>
</If>
</If>
</Configuration>
Excel
Note
Die .xlam-Datei muss gezippt als "Fremdvorlage" importiert werden.
Um das OneOffixx Excel Addin auszurollen, ist folgende Konfiguration notwendig:
<Configuration>
<Path>%APPDATA%\OneOffixx\Excel</Path>
<LockFile>%APPDATA%\OneOffixx\Excel\OneOffixx.xlam</LockFile>
<Shortcut>%APPDATA%\Microsoft\Excel\XLSTART\</Shortcut>
<Cleanup>
<File Path="%APPDATA%\OneOffixx\Excel" />
<File Path="%APPDATA%\Microsoft\Excel\XLSTART\OneOffixx.lnk" />
</Cleanup>
</Configuration>