How to create a workbook from a signed addin that is itself signed

G

Guest

This has to be a common problem. We have an Excel addin that we sell to
users. This addin creates a new workbook for the user (Workbooks.add) and
copies several pages from the xla into the created workbook that themselves
contain a minimal amount of VBA code, just enough to invoke code hidden in
our addin.
We code sign the addin project using a Verisign certificate. We hoped that
users would then not be presented with the "enable macros" question (when
security is set to "medium" or above). Indeed they are not initially, when
opening Excel after installing our addin, nor when they create their own
workbook via our menu item, nor while they interact with this workbook.
However, once they save the created workbook, every time they subsequently
open it they are presented with the "enable macros" question. Or if they have
security set to "high," the macros simply don't work.
I assume this happens because of the pages containing VBA code that we
copied from the addin into the created workbook. Even though the code was
originally signed, somehow this "guarantee" does not propagate to the newly
created workbook.
Is there any solution to this, something we could do differently that would
make this work? Ideally, the solution would work in Excel 97 - current
version.
 
N

NickHK

I seem to remember that if a signed VBA project is altered and saved, it
cannot maintain its signature if the changes are made on a machine different
to that where the original certificate was installed.
Newer versions of Excel have more functionality in this area which may help,
but not XL2K and before

Could be wrong though...

NickHK
 
P

Peter T

Instead of creating a new book, could you distribute a signed template with
the code already in it. When you need to make a new book make a copy of the
template then add whatever data to the sheets. Would only work of course if
you don't need to change anything inside its project.

Alternatively perhaps get user to create their own self-cert and have them
add that to the new wb. Might be possible to do that semi automatically with
SendKeys with code along the lines of unprotecting a locked project. Not
sure, I've not tried. Your app would need get from user one time the name of
the self-cert and perhaps store it in the registry.

Regards,
Peter T
 
P

Peter T

PS

self-cert n/a in Office 97

Peter T


Peter T said:
Instead of creating a new book, could you distribute a signed template with
the code already in it. When you need to make a new book make a copy of the
template then add whatever data to the sheets. Would only work of course if
you don't need to change anything inside its project.

Alternatively perhaps get user to create their own self-cert and have them
add that to the new wb. Might be possible to do that semi automatically with
SendKeys with code along the lines of unprotecting a locked project. Not
sure, I've not tried. Your app would need get from user one time the name of
the self-cert and perhaps store it in the registry.

Regards,
Peter T
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top