5

我试图让我们的构建脚本(使用 MSBuild)在 Vista 上正常工作,并且发现将注册输出(在链接器选项中)选项设置为 True 的项目无法从命令行构建,如下所示:

项目:错误 PRJ0050:无法注册输出。请尝试启用每用户重定向或使用提升的权限从命令提示符注册组件。

虽然我可以很容易地为一台机器解决这个问题,但通过以管理员身份运行或任何我希望构建脚本对任何开发机器“正常工作”的方式运行。

即使只是注册失败但继续构建也是令人满意的。有什么建议么?

布拉德

4

1 回答 1

4

您可以创建包含以下文本的 cmd 文件:

@echo 关闭
调用 regsvr32.exe /s %1
if %errorlevel% EQU 0 goto ok
echo 注册 %1 失败
转到退出
:行
echo 注册成功 %1
:出口

之后,您应该关闭注册输出,并且应该使用命令添加自定义构建步骤<pathtocmdscript> $(TargetPath)。对于自定义构建步骤,输出一应设置为 $(TargetPath)。

最后,您将收到有关注册进度的消息,但编译不会在该步骤停止。

于 2009-07-17T20:31:28.180 回答