I am required to modify an Excel Add-in. The solution already exists under source control. The new PC, I’m using, has never been used to build it before.
When I try to publish it I get two errors:
Cannot import the following key file: CompanyName.snk. The key file may be password protected. To correct this, try to import the certificate again or import the certificate manually into the current user’s personal certificate store. Importing key file "MyXlAddInProjectName_1_TemporaryKey.pfx" was canceled.
I don’t know the password in the SNK. The developer who originally wrote it does not know it. I cannot change the password. VS 2017 Community has that option greyed out.
What does the error message mean when it says “Cannot import the following key file: CompanyName.snk”? ‘Import it‘ where to what?
Do I need to make a new SNK file for the excel add-in project?
If so, do I need to give this SNK a password?
If I delete the existing SNK, create a new one with a new password. What do I need to do next?
Will I need to ‘import it’ (the SNK) into my KeyContainer in my CurrentUser (AKA ‘certificate store’)?.
Is it a good idea to create a generic ‘certificate store’ called CompanyName, or a KeyContainer called CompanyName. Put the new SNK there and force all the other developers to do that?
Otherwise, if after doing all this, how will another developer, who checks my code out of the repo, to their PC, be able to publish it without the key signing process going wrong?
Apologies for the mass of questions which I’m certain StackOverFlow will reject. But this is obscure, with people using different terms for the same thing.
Hint: Checkout KeyPal from https://github.com/doggy8088/KeyPal a tiny utility to give you information on your key containers.