首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SignTool:无法签署XLSM (DOCM)

SignTool:无法签署XLSM (DOCM)
EN

Stack Overflow用户
提问于 2022-03-18 13:57:53
回答 2查看 412关注 0票数 2

我对微软的SignTool.exe有一点小问题。我已经安装了Windows10SDK和办公室小口来支持macro enabled documents。然后我跟随readme激活dlls并做了所有的更改,包括:

  1. 安装- Microsoft Visual C++运行时库
  2. 设置VBE7.DLL的路径

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VBA]

"Vbe71DllPath"="C:\Workspace\Signing\vbe7.dll"

  1. 注册MSOSIPX.DLLREGSVR32
  2. 我还创建了wintrust.dll.ini并添加了以下内容:

1

DLL=

GUID={6E64D5BD-CEB0-4B66-B4A0-15AC71775C48}

CryptSIPDllCreateIndirectData=_VBASipCreateIndirectData@12

CryptSIPDllGetSignedDataMsg=_VBASipGetSignedDataMsg@20

CryptSIPDllIsMyFileType2=_VBASipIsMyTypeOfFileName@8

CryptSIPDllPutSignedDataMsg=_VBASipPutSignedDataMsg@20

CryptSIPDllRemoveSignedDataMsg=_VBASipRemoveSignedDataMsg@8

CryptSIPDllVerifyIndirectData=_VBASipVerifyIndirectData@8

  1. 我在用: 发生了signtool sign /debug /n "Cert" /fd SHA256 test.xlsm和以下情况:

SignTool错误:无法对此文件格式进行签名,因为它不被识别。

SignTool错误:试图签名时发生错误: test.xlsm

成功签名的文件数: 0

警告数: 0

错误数: 1

结尾的小纸条:

对于test.exe,它运行得很好。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-03-22 15:28:43

我通过使用regsvr32.exe而不是cmd来解决这个问题。

重要注意事项!,我在工作文件夹C:\Workspace\Signing中调用msosipx.dll上的regsvr32.exe

我真不明白它为什么会起作用。

票数 0
EN

Stack Overflow用户

发布于 2022-08-01 06:11:12

我知道这个问题已经得到了解答,但我要补充一下我对其他人的意见。

我认为您不需要SIP模块路径的尖括号。按照维基百科,语法是key = value。所以我会用:

代码语言:javascript
复制
[1]
DLL=C:\Workspace\Signing\msosipx.dll

还要确保您使用的是来自"C:\Program Files (x86)\Windows Kits\10\bin\10.0.18362.0\x86"的32位版本的签名工具。使用64位版本,我收到了与您相同的错误。但是,按照捆绑offsign.bat中的示例并使用正确的版本,它就可以工作了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71528154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档