Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
To clarify the request:
The step "Visual Basic = Tools = Digitial Signature" have to be automated. "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
In message
at 06:46:03 on Fri, 31 Aug 2007, bow wrote To clarify the request: The step "Visual Basic = Tools = Digitial Signature" have to be automated. "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike Mmmm, it kinda defeats the whole point of what digital certificates are for doesn't it if you could sign files external to the one running the program -- Mike News |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
This is from the VBA help file. However, it requires that a digital
signature certificate be in existence. Example The following example prompts the user to select a digital signature with which to sign the active document in Microsoft Word. To use this example, open a document in Word and pass this function the name of a certificate issuer and the name of a certificate signer that match the Issued By and Issued To fields of a digital certificate in the Digital Certificates dialog box. This example will test to make sure that the digital signature that the user selects meets certain criteria, such as not having expired, before the new signature is committed to the disk. Function AddSignature(ByVal strIssuer As String, _ strSigner As String) As Boolean On Error GoTo Error_Handler Dim sig As Signature 'Display the dialog box that lets the 'user select a digital signature. 'If the user selects a signature, then 'it is added to the Signatures 'collection. If the user doesn't, then 'an error is returned. Set sig = ActiveDocument.Signatures.Add 'Test several properties before commiting the Signature object to disk. If sig.Issuer = strIssuer And _ sig.Signer = strSigner And _ sig.IsCertificateExpired = False And _ sig.IsCertificateRevoked = False And _ sig.IsValid = True Then MsgBox "Signed" AddSignature = True 'Otherwise, remove the Signature object from the SignatureSet collection. Else sig.Delete MsgBox "Not signed" AddSignature = False End If 'Commit all signatures in the SignatureSet collection to the disk. ActiveDocument.Signatures.Commit Exit Function Error_Handler: AddSignature = False MsgBox "Action cancelled." End Function "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks for your answer - but:
The code you pasted below signs the _document_'s content. What we need is a signature of the vba macros inside the document. (DeveloperToolsDigital Signature). This creates a file inside Open XML as vbaProjectsignature.bin file and relates to vbaProject.bin file. In contrast the document's signature (which is created with code below) is stored as a standard XML-Signature [file sig2.xml]. Nevertheless, thanks a lot for your response. rgds, Mike "JLGWhiz" wrote: This is from the VBA help file. However, it requires that a digital signature certificate be in existence. Example The following example prompts the user to select a digital signature with which to sign the active document in Microsoft Word. To use this example, open a document in Word and pass this function the name of a certificate issuer and the name of a certificate signer that match the Issued By and Issued To fields of a digital certificate in the Digital Certificates dialog box. This example will test to make sure that the digital signature that the user selects meets certain criteria, such as not having expired, before the new signature is committed to the disk. Function AddSignature(ByVal strIssuer As String, _ strSigner As String) As Boolean On Error GoTo Error_Handler Dim sig As Signature 'Display the dialog box that lets the 'user select a digital signature. 'If the user selects a signature, then 'it is added to the Signatures 'collection. If the user doesn't, then 'an error is returned. Set sig = ActiveDocument.Signatures.Add 'Test several properties before commiting the Signature object to disk. If sig.Issuer = strIssuer And _ sig.Signer = strSigner And _ sig.IsCertificateExpired = False And _ sig.IsCertificateRevoked = False And _ sig.IsValid = True Then MsgBox "Signed" AddSignature = True 'Otherwise, remove the Signature object from the SignatureSet collection. Else sig.Delete MsgBox "Not signed" AddSignature = False End If 'Commit all signatures in the SignatureSet collection to the disk. ActiveDocument.Signatures.Commit Exit Function Error_Handler: AddSignature = False MsgBox "Action cancelled." End Function "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I'm having the same problem and it seems that there is nothing on internet
about that elsewhere... Did you find any solution ?? Thanks -- Thibaut "bow" wrote: Thanks for your answer - but: The code you pasted below signs the _document_'s content. What we need is a signature of the vba macros inside the document. (DeveloperToolsDigital Signature). This creates a file inside Open XML as vbaProjectsignature.bin file and relates to vbaProject.bin file. In contrast the document's signature (which is created with code below) is stored as a standard XML-Signature [file sig2.xml]. Nevertheless, thanks a lot for your response. rgds, Mike "JLGWhiz" wrote: This is from the VBA help file. However, it requires that a digital signature certificate be in existence. Example The following example prompts the user to select a digital signature with which to sign the active document in Microsoft Word. To use this example, open a document in Word and pass this function the name of a certificate issuer and the name of a certificate signer that match the Issued By and Issued To fields of a digital certificate in the Digital Certificates dialog box. This example will test to make sure that the digital signature that the user selects meets certain criteria, such as not having expired, before the new signature is committed to the disk. Function AddSignature(ByVal strIssuer As String, _ strSigner As String) As Boolean On Error GoTo Error_Handler Dim sig As Signature 'Display the dialog box that lets the 'user select a digital signature. 'If the user selects a signature, then 'it is added to the Signatures 'collection. If the user doesn't, then 'an error is returned. Set sig = ActiveDocument.Signatures.Add 'Test several properties before commiting the Signature object to disk. If sig.Issuer = strIssuer And _ sig.Signer = strSigner And _ sig.IsCertificateExpired = False And _ sig.IsCertificateRevoked = False And _ sig.IsValid = True Then MsgBox "Signed" AddSignature = True 'Otherwise, remove the Signature object from the SignatureSet collection. Else sig.Delete MsgBox "Not signed" AddSignature = False End If 'Commit all signatures in the SignatureSet collection to the disk. ActiveDocument.Signatures.Commit Exit Function Error_Handler: AddSignature = False MsgBox "Action cancelled." End Function "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Alas no ... I'm still searching for a solution.
"Thibaut Blanchin" wrote: I'm having the same problem and it seems that there is nothing on internet about that elsewhere... Did you find any solution ?? Thanks -- Thibaut "bow" wrote: Thanks for your answer - but: The code you pasted below signs the _document_'s content. What we need is a signature of the vba macros inside the document. (DeveloperToolsDigital Signature). This creates a file inside Open XML as vbaProjectsignature.bin file and relates to vbaProject.bin file. In contrast the document's signature (which is created with code below) is stored as a standard XML-Signature [file sig2.xml]. Nevertheless, thanks a lot for your response. rgds, Mike "JLGWhiz" wrote: This is from the VBA help file. However, it requires that a digital signature certificate be in existence. Example The following example prompts the user to select a digital signature with which to sign the active document in Microsoft Word. To use this example, open a document in Word and pass this function the name of a certificate issuer and the name of a certificate signer that match the Issued By and Issued To fields of a digital certificate in the Digital Certificates dialog box. This example will test to make sure that the digital signature that the user selects meets certain criteria, such as not having expired, before the new signature is committed to the disk. Function AddSignature(ByVal strIssuer As String, _ strSigner As String) As Boolean On Error GoTo Error_Handler Dim sig As Signature 'Display the dialog box that lets the 'user select a digital signature. 'If the user selects a signature, then 'it is added to the Signatures 'collection. If the user doesn't, then 'an error is returned. Set sig = ActiveDocument.Signatures.Add 'Test several properties before commiting the Signature object to disk. If sig.Issuer = strIssuer And _ sig.Signer = strSigner And _ sig.IsCertificateExpired = False And _ sig.IsCertificateRevoked = False And _ sig.IsValid = True Then MsgBox "Signed" AddSignature = True 'Otherwise, remove the Signature object from the SignatureSet collection. Else sig.Delete MsgBox "Not signed" AddSignature = False End If 'Commit all signatures in the SignatureSet collection to the disk. ActiveDocument.Signatures.Commit Exit Function Error_Handler: AddSignature = False MsgBox "Action cancelled." End Function "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
OK... :-(
I will let you know if I finally find something. -- Thibaut "bow" wrote: Alas no ... I'm still searching for a solution. "Thibaut Blanchin" wrote: I'm having the same problem and it seems that there is nothing on internet about that elsewhere... Did you find any solution ?? Thanks -- Thibaut "bow" wrote: Thanks for your answer - but: The code you pasted below signs the _document_'s content. What we need is a signature of the vba macros inside the document. (DeveloperToolsDigital Signature). This creates a file inside Open XML as vbaProjectsignature.bin file and relates to vbaProject.bin file. In contrast the document's signature (which is created with code below) is stored as a standard XML-Signature [file sig2.xml]. Nevertheless, thanks a lot for your response. rgds, Mike "JLGWhiz" wrote: This is from the VBA help file. However, it requires that a digital signature certificate be in existence. Example The following example prompts the user to select a digital signature with which to sign the active document in Microsoft Word. To use this example, open a document in Word and pass this function the name of a certificate issuer and the name of a certificate signer that match the Issued By and Issued To fields of a digital certificate in the Digital Certificates dialog box. This example will test to make sure that the digital signature that the user selects meets certain criteria, such as not having expired, before the new signature is committed to the disk. Function AddSignature(ByVal strIssuer As String, _ strSigner As String) As Boolean On Error GoTo Error_Handler Dim sig As Signature 'Display the dialog box that lets the 'user select a digital signature. 'If the user selects a signature, then 'it is added to the Signatures 'collection. If the user doesn't, then 'an error is returned. Set sig = ActiveDocument.Signatures.Add 'Test several properties before commiting the Signature object to disk. If sig.Issuer = strIssuer And _ sig.Signer = strSigner And _ sig.IsCertificateExpired = False And _ sig.IsCertificateRevoked = False And _ sig.IsValid = True Then MsgBox "Signed" AddSignature = True 'Otherwise, remove the Signature object from the SignatureSet collection. Else sig.Delete MsgBox "Not signed" AddSignature = False End If 'Commit all signatures in the SignatureSet collection to the disk. ActiveDocument.Signatures.Commit Exit Function Error_Handler: AddSignature = False MsgBox "Action cancelled." End Function "bow" wrote: Hi, We want to sign a bunch of files with excel macros programmatically. Anyone knows of C#.Net or VB.Net solution? Fileformat is excel 2007 (Open XML). Thanks, Mike |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Having Trouble Digitally signing a macro | Excel Discussion (Misc queries) | |||
Signing a macro | Excel Programming | |||
loading a macro programmatically in excel VBA or perl | Excel Programming | |||
Code signing a VBA macro in 2002 and 2003 | Excel Programming | |||
programmatically changing priority of running excel macro at runti | Excel Programming |