|
1
1
键入六个文件名,或使用带有pragma comment(lib,“foo.lib”)的声明式样式,与将其转换为DLL或COM服务器所需做的工作相比,是微不足道的。 发行版非常倾向于将其用作静态链接库。只有spotty声明可以将其转换为带有declspec(dllexport)的DLL。它们只存在于第三方依赖关系中。当然,所有这些都使用不同的定义,您将在项目的预处理器定义中键入一组名称。 此外,由于在COM服务器中使用此DLL,因此在运行时实际加载此DLL将非常困难。当COM创建控件实例时,DLL的搜索路径将是客户端应用程序的路径,不太可能靠近部署DLL的位置。 使其成为COM服务器是 许多 |
|
|
2
1
您还可以将所需的所有功能打包到非COM dll中。Visual studio支持创建一个静态包装库,当链接时,它将使您的程序使用dll。这样,您只需要指定一个依赖项,而不是六个。
|
|
|
3
1
也许我遗漏了一些东西,但我真的不知道(1)有什么问题。我认为,即使您有多个使用libkml的项目,只要将libkml的项目文件插入到解决方案文件中,指定依赖项,就应该完成。很简单。即使解决方案(2)也非常简单。如果库发生了变化,你就需要重新构建——无论如何你都需要这样做。 我看不出(3)或(4)是多么必要,甚至是多么渴望。对我来说,这听起来像是为目标(源代码树组织和可维护性)做了很多工作,我甚至不确定这些选项是否真的能实现。事实上,你自己说过“libkml代码与我们应用程序的代码相比不太可能发生变化。” 这些年来我发现的是保持简单。如果重建KML可能很耗时,请获取libs并静态链接到库。是的,还有其他的依赖项,但是您只需设置一次就可以完成,希望以后再也不用担心了。否则,就把它放在项目中,然后继续前进。我认为值得问的是,在这个问题上花很多时间是否值得麻烦。 |
|
|
maurobio · 如何在Python中从KML文件中获取坐标列表 8 年前 |
|
|
Tim Autin · Android意向过滤器不工作 9 年前 |
|
|
Dzz · 用pyephem检索的卫星轨道的可视化已关闭 10 年前 |
|
|
Omnia9 · XSLT:基于文本替换所有href 11 年前 |
|
|
kbolchen · IE8中的谷歌地图v3 kml多边形透明度 12 年前 |
|
|
user3277935 · 在GoogleEarth中更改地图样式 12 年前 |
|
|
Ernie S · KML中占位符集合的序列化 12 年前 |