求助:使用Advanced Installer打包的.NET Office Word插件无法加载
确认DLL注册逻辑是否匹配加载项类型
.NET Office加载项(尤其是VSTO类型)不能用传统regsvr32工具注册,必须使用RegAsm.exe(针对COM互操作加载项)或依赖Advanced Installer的**.NET注册**专属配置。如果是VSTO加载项,还需确保安装程序自动生成Office加载项注册表项——路径通常是HKCU\Software\Microsoft\Office\Word\Addins\[你的加载项ID]或HKLM下对应路径,必须包含Manifest(指向加载项清单路径)、LoadBehavior(设为3表示启动时自动加载)、FriendlyName这几个核心键值。检查安装路径的权限兼容性
即便安装程序拥有管理员权限,若加载项部署在Program Files这类系统受保护目录,普通用户权限运行Word时可能无法读取DLL或写入临时配置。建议将加载项安装到%AppData%用户专属目录,或手动给安装目录的Users组分配读取&执行权限。替换调试版DLL为发布版
调试版DLL依赖调试符号与开发环境,发布时必须使用Release模式编译的DLL文件,同时确认所有第三方依赖库都已打包进安装程序。调试阶段注册的DLL路径往往和发布版不一致,这是Office找不到加载项的常见原因。验证Office加载项的信任与状态
打开Word后,进入文件>选项>加载项>管理COM加载项,检查你的加载项是否在列表中:- 若状态为“已禁用”,手动启用并重启Word;
- 若未出现在列表中,说明注册表项未正确生成或路径错误。
此外,确保加载项已通过强名称签名,Office会默认阻止未签名或签名无效的加载项。
启用Office加载日志定位具体错误
在注册表中添加HKCU\Software\Microsoft\Office\16.0\Word\Diagnostics路径,新建EnableLoggingDWORD值并设为1,重启Word后,加载日志会生成在%TEMP%\VSTO_LOGS目录。日志会明确指出失败原因,比如依赖缺失、权限不足或注册表键值错误。核对Advanced Installer的关键配置
确认Advanced Installer中以下配置无误:- 已添加对应版本的.NET Framework作为必备组件;
- VSTO运行时被包含为必备项(针对VSTO加载项);
- 注册表项的
LoadBehavior值设置为3(而非0或1); - 安装包的目标平台与Office位数完全匹配(32位Office对应32位加载项,64位同理)
内容的提问来源于stack exchange,提问作者je30ca

