Unterschreiben Sie ein Word -VBA -Projekt/eine Datei über Befehlszeile oder eine andere Form der Automatisierung

StackOverflow https://stackoverflow.com/questions/2422508

  •  19-09-2019
  •  | 
  •  

Frage

Gibt es eine Möglichkeit, Code zu automatisieren, die ein VBA -Projekt in einem Word 2003 und/oder Word 2007 -Dokument signieren?

Mit automatisieren meine ich über ein Befehlszeilen -Dienstprogramm oder über Word VBA Automation?

Motivation: Ich möchte im Rahmen eines automatisierten täglichen Build- und Verteilungszyklus mehrere Wortvorlagen codieren. Im Moment müssen wir dies manuell tun, indem wir jedes Dokument in Word und zurücktreten.

Danke, Malcolm

War es hilfreich?

Lösung

Ich glaube nicht, dass es eine automatisierte Möglichkeit gibt, dies zu tun Code-Signierung VBA -Projektunterzeichnung.

Die beiden Nachrichtenverdauungen werden verglichen, und wenn ein Teil der Datei geändert oder beschädigt wurde, stimmen die Digests nicht überein und der Inhalt der Datei kann nicht vertrauenswürdig sein. Der Überprüfungsprozess fällt unabhängig davon, wie die Datei geändert wurde - ob durch Korruption, ein Makrovirus oder programmatische Änderungen, die durch eine Add -In- oder Bürolösung vorgenommen wurden. Der Überprüfungsprozess schlägt ebenfalls fehl, wenn die Datei nicht mit einem gültigen Zertifikat signiert wurde. Das heißt, wenn das Zertifikat abgelaufen war oder gefälscht, geändert oder verderbt worden war. Wenn ein anderer Benutzer das VBA-Projekt ändert, beseitigt die Büro 2000-Anwendung die aktuelle Signatur und fordert den Benutzer auf, das VBA-Projekt erneut zu unterzeichnen. Wenn der Benutzer das VBA -Projekt nicht unterzeichnet oder es mit einem anderen Zertifikat unterzeichnet, kann die Datei den Überprüfungsprozess nicht bestehen.

Eingefügt von http://msdn.microsoft.com/en-us/library/aa190113(Office.10).aspx

Die Codessignierung hat die zusätzliche Sicherheitsstufe in der Tatsache, dass ein Entwickler den Quellcode kompilieren muss. Ein Makro wird nicht kompiliert und kann als Text verteilt werden. Daher würde die Automatisierung der Makrosignierung ein großes Sicherheitsloch öffnen. Manuell sucht ein Makro ähnlich wie Outlook, der den Benutzer dazu veranlasst, den programmatischen Zugriff auf das Adressbuch zu ermöglichen.

Andere Tipps

Ich habe noch nie einen Weg gesehen, dies zu tun. Ich hatte vor Jahren eine automatisierte Erstellung einer Vorlage und am Ende steckte ich ein Meldungsfeld mit der Aufschrift "Sie müssen jetzt die Vorlage unterschreiben" und öffnete dann VBA für sie. Ich sage nur, ich fühle deinen Schmerz, denke ich.

Dies kann einen Blick wert sein:http://winbatch.com/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top