我想只用一次调用编译一个C++项目,WinExec
以便用一些命令行参数启动另一个可执行文件.我不知道,指定在我的项目,以获得产生,无需微软并排侧的DLL,我不希望有安装我的目标系统上工作的可执行什么设置.任何提示?
症状是一个无法启动的应用程序,以下事件被写入应用程序日志(从法语自由翻译):
Error, SideBySide, event #33 Microsoft.VC90.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8" cannot be found.
更新:我知道使用WinExec
是不好的做法,但它就像一个魅力,微软不可能在任何未来的API版本中删除它,不是吗?
如果您指定要静态链接运行时(/ MT或/ MTd),那么您应该很好.项目属性 - > C/C++ - >代码生成 - >运行时库
如果您只需要CreateProcess/ShellExecute(自NT 3.1/Win 95以来不推荐使用WinExec),则根本不需要任何运行时库.在项目属性/配置/链接器/输入中启用忽略所有默认库并将kernel32.lib添加到其他依赖项.