我有几个windows C++程序,它们通过DLL使用SQLITE。visual-studio项目属性引用sqlite3.lib。它们构建和运行都很好。
然而,当我创建一个安装程序时,对SQLITE3.DLL的依赖关系没有被可靠地检测到,DLL没有被包括在内,并且我的客户端陷入了"DLL地狱“。
每次,我都必须手动检查安装程序是否包含了DLL。如果没有,我必须手动使用“文件系统编辑器”来添加DLL。当我这样做并请求重新生成安装程序时,visual studio突然检测到DLL,添加了另一个副本,然后抱怨有两个副本。因此,我必须停止构建,手动删除多余的副本,然后重新开始构建。
这是一个屏幕截图,显示了两份副本。
alt text http://66.199.140.183/vs2008.jpg
这是非常令人沮丧和容易出错的!
有没有办法强制visual studio每次只包含DLL的一个副本,而不需要手动干预?
发布于 2010-04-14 00:06:40
是否将"Exclude“的依赖属性设置为"False”和"Vital“设置为"True"?(或者更极端的是,您甚至可以将"Condition“设置为"True",这将使此组件始终安装。)
https://stackoverflow.com/questions/2630391
复制相似问题