基于 AutoCAD 的程序使用数字签名来验证自定义程序文件是否可以安全加载。可以对带有 ARX、CRX、DBX 或 DLL 文件扩展名的二进制(ObjectARX 和 Managed .NET)文件进行数字签名。
注: 需要使用 Microsoft 提供的签名工具 (SignTool.exe) 才能将数字签名附着到二进制文件。您必须从 Microsoft 网站 (https://developer.microsoft.com/zh-cn/windows/desktop) 下载并安装最新版本的 Windows SDK 来使用签名工具。除了符号工具,您还需要获取数字证书。数字证书通常可从供应商(例如,Symantec ™
和 DigiCert ®
)处获取,但您也可以创建自己的数字证书,用于在您公司内部分发应用程序。
下面是使用 SignTool.exe 工具对二进制文件进行签名的示例:
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\signtool.exe" sign /f MyCert.pfx /p MyPassword /t http://timestamp.verisign.com/scripts/timstamp.dll "c:\Autodesk\AdskUtil.arx"
- "C:\Program Files\Microsoft SDKs\Windows\<版本>\Bin\MakeCert.exe" - 指定 SignTool.exe 工具的位置。
- sign - 指示将对二进制文件进行签名。
- /f MyCert.pfx - 指定将用于对文件进行签名的 PFX 文件的位置。在本示例中,该文件名为 MyCert.pfx。
- /p MyPassword - 指定分配给 PFX 文件的密码。在本示例中,密码为 MyPassword。
- /t http://timestamp.verisign.com/scripts/timstamp.dll - 指定时间戳服务器的 URL。服务器上的文件必须已经过数字签名。在本示例中,时间戳的服务器和文件为 http://timestamp.verisign.com/scripts/timstamp.dll。
- "c:\Autodesk\AdskUtil.arx" - 指定要进行签名的文件。在本示例中,将进行签名的文件为位于 c:\Autodesk 文件夹下的 AdskUtil.arx。
若要对二进制文件进行签名,请执行以下操作:
- 执行以下操作之一,以显示 Windows 命令提示:
- 在 Windows 命令提示窗口中,键入 cd %userprofile%\Documents,然后按 Enter 键以将“Documents”文件夹设置为当前工作文件夹。若要使用其他工作文件夹,则改为指定该位置。
- 键入 SignTool.exe 的位置和应执行的参数。
只要文件没有标记为只读或位于只读位置,对文件进行签名应该会成功。
- 将新签名的文件加载到基于 AutoCAD 的程序中并验证数字签名是否可识别。
注: 数字证书必须位于受信任的根证书存储中,以便基于 AutoCAD 的程序验证签名。