没有问题使用旧版本(v3)构建项目,其中只有一组dll,并且项目目标设置是为“任何CPU”设置的。它适用于x86和x64版本,并且在Win32和Win64盒子上运行良好。
已下载并想尝试最新的Teechart 2012版本(4.1.2012.7136) 既然Steema同时提供x64和x86 dll,我想使用优化的x64 dll's
问题1:我的理解是否正确?为什么在新版本中有两个版本的TeeChart dll?构建测试1:使用新的x64 TeeChart dll进行x64项目构建 将文件夹C:\ Program Files(x86)\ Steema Software \ Steema TeeChart for .NET 2012 \ net35 \ x64 \复制到项目文件夹。这是因为我想用x64 dll构建
构建x64 build时遇到2种构建错误: Error1'无法加载文件或程序集'TeeChart,Version = 4.1.2012.7136,Culture = neutral,PublicKeyToken = 9c8126276c77bdb7'或其依赖项之一。试图加载格式不正确的程序。'
误差2: '无法加载文件或程序集'TeeChart,Version = 3.5.3225.32185,Culture = neutral,PublicKeyToken = 9c8126276c77bdb7'或其依赖项之一。指针无效(来自HRESULT的异常:0x80004003(E_POINTER))'
问题2: 我是否需要更新项目中的所有licenses.licx文件?我知道这些是在添加TChart时自动生成的吗?当我刚刚更新TeeChart库时,如何处理这种情况?
问题3: 为什么会出现两种不同的错误?所有licenses.licx目前都包含Version = 3.5.3225.32185的文本。我尝试手动将所有licenses.licx文件更新到较新版本但没有帮助。
构建测试2:使用新的x86 TeeChart dll进行x64项目构建 将文件夹C:\ Program Files(x86)\ Steema Software \ Steema TeeChart for .NET 2012 \ net35 \ x86 \复制到项目文件夹。
一切都很好并且运行良好
问题4:如果没有更新项目中的licenses.licx文件,这是如何构建的?
答案 0 :(得分:0)
问题1:我的理解是否正确?为什么两个版本的TeeChart dll是在新版本中?
这是为用户提供有关可能的环境组合的所有选项。
构建测试1:使用新的x64 TeeChart dll复制x64项目构建 dll来自文件夹C:\ Program Files(x86)\ Steema Software \ Steema TeeChart for .NET 2012 \ net35 \ x64 \到项目文件夹。这是因为 我想用x64 dll构建
构建x64 build时遇到2种构建错误:Error1'不能 加载文件或程序集'TeeChart,Version = 4.1.2012.7136, Culture = neutral,PublicKeyToken = 9c8126276c77bdb7'或其中一个 依赖。尝试加载程序不正确 格式“。
除了复制程序集之外,您是否更新了项目中的TeeChart.dll引用?您可以尝试将其删除并将其分配给x64程序集。
错误2:'无法加载文件或程序集'TeeChart, 版本= 3.5.3225.32185,文化=中立, PublicKeyToken = 9c8126276c77bdb7'或其依赖项之一。无效 指针(来自HRESULT的异常:0x80004003(E_POINTER))'
您应该将licenses.licx更新为新版本,或者使用与教程17中所述的最小版本无关的licenses.licx。可以在TeeChart的程序组中找到教程。
问题2:我是否需要更新项目中的所有licenses.licx文件 ?我知道这些是在添加TChart时自动生成的吗?怎么做 我刚刚更新TeeChart库时处理情况?
我建议您使用前一个回复中所述的无版本licenses.licx。
问题3:为什么会出现两种不同的错误?所有licenses.licx 目前有包含版本= 3.5.3225.32185的文本。我试过了 手动将所有licenses.licx文件更新到较新版本但是 没用。
可能是因为有两个问题:1,项目找不到它所设置的TeeChart参考。 2,找到的TeeChart程序集版本与licenses.licx设置不一致。
构建测试2:使用新的x86 TeeChart dll进行x64项目构建复制 dll来自文件夹C:\ Program Files(x86)\ Steema Software \ Steema TeeChart for .NET 2012 \ net35 \ x86 \到项目文件夹。
一切都很好并且运行良好
问题4:如何在没有任何更新的情况下构建正常 项目中的licenses.licx文件?
可能是因为项目TeeChart.dll引用尚未更新,仍然指向x86 TeeChart版本。
答案 1 :(得分:0)
除了复制程序集之外,您是否更新了项目中的TeeChart.dll引用?您可以尝试删除它并将其分配给x64程序集。
我正在复制现有的dll,那为什么我会在项目中引用问题。无论如何,我试图删除引用并将它们添加回来只是为了它,但这并没有使错误消失。我最终在项目引用中添加了x86 dll,并且更新了licenses.licx以指向更新的版本,它构建了x64 build。但是,为了获得x64盒子的完全优化,我将x64 dll复制到应用程序文件夹中。它运行正常。
这解决了两个问题:
1:Visual Studio设计器需要x86 dll,因此如果我们想要使用设计器对UI进行任何更改,则不能在项目引用中引用x64 dll。
2:修复了前面概述的许可证编译器的构建错误。
现在我认为错误' * 无法加载文件或程序集'TeeChart,Version = 4.1.2012.7136,Culture = neutral,PublicKeyToken = 9c8126276c77bdb7'或其依赖项之一。试图加载一个格式不正确的程序 * “是真的,因为它来自许可证编译器,就像设计师在项目参考中需要x86 dll一样。
你觉得怎么样?
答案 2 :(得分:0)
问题1:我的理解是否正确?为什么在新版本中有两个版本的TeeChart dll? 这样就可以为用户提供有关可能的环境组合的所有选项。
我理解灵活性。我试图得到答案的意图是在新版本中使用单独的dll。它曾经只是2008年的一套dll。所以为什么现在x64和x86版本。我没有看到任何帮助或发布说明解释差异。 x64 dll是否在运行时在x64上进行了优化?