无法执行构建后事件

时间:2013-04-19 06:08:37

标签: visual-studio-2010 vc6 post-build-event

我已将旧的Visual C ++ 6.0项目转换为新的Visual C ++ 2010项目。它的功能,但我从旧项目中获取的后期构建事件有问题。它在计算机上注册了目标文件(.ocx):

copy $(ProjDir)\PDFXChange\dll.Debug\*.* $(TargetDir) 
regsvr32 /s /c "$(TargetPath)" 
echo regsvr32 exec. time > "$(OutDir)\regsvr32.trg"

在我的新解决方案中它不起作用。我还在单个命令中对它进行了测试:在三个命令(copy,regsvr32和echo)中,只能执行最后一个命令。可能是我的错误。

错误:

error MSB3073: The command "copy \PDFXChange\dll.Debug\*.* C:\_tests_\ocx2010\Debug\ 
regsvr32 /s /c "C:\_tests_\ocx2010\.\Debug\LayoutBox.dll" 
echo regsvr32 exec. time > ".\Debug\\regsvr32.trg"
:VCEnd" exited with code 3. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets

COPY和REGSVR32似乎无法正常工作。

1 个答案:

答案 0 :(得分:0)

问题在于宏$(ProjDir)的名称。在Visual C ++ 2010中它是$(ProjectDir)

$(ProjDir) - > $(Proj ect Dir)

一些宏改变了他们的名字(经过这么多年)!

命令 copy \ PDFXChange \ _dll.Debug *。* C: tests \ ocx2010 \ Debug 应该将一些DLL复制到下一个命令的文件夹中regsvr32 / s / c" C: tests \ ocx2010。\ Debug \ LayoutBox.dll 尝试注册目标文件。它无法在那里找到任何DLL,因此它会退出并显示错误消息。