How to create a workbook from a signed addin that is itself signed
PS
Ideally, the solution would work in Excel 97 - current version.
self-cert n/a in Office 97
Peter T
"Peter T" <peter_t@discussions wrote in message
...
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
"willhandley" wrote in message
...
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.
|