我正在使用LabVIEW 8.5,Testand 4.0和Windows XP。
我一直在使用LabVIEW Vi,它调用.Net dll(在v2.0中创建,不是强类型,不在GAC中添加),以及成功调用这些Vi的Testand序列。
随着dll的版本发生变化,我将新的dll拖放到同一个位置,所有的地狱都会松动。已经工作的Vi中断,如果我添加一个新的VI并指向新的dll,Constructor节点会抱怨“无法加载程序集”。
我尝试了一个解决方法: http://digital.ni.com/public.nsf/allkb/3C5F47E9845C535286257C7100501990
我尝试了以下步骤:
问题是,这种解决方法有时会起作用,并且不会多次工作。即使如果我更改第4步,并将新的DLL及其依赖项拖放到新位置(稍后将其恢复)并重复其他步骤,仍然无法以确定的方式解决问题。
我已尝试升级到Lv2014,但问题仍然存在。此外,如果任何时候它工作,我从TS运行相同的VI(我升级到Ts 2014,这本身意味着做了很多流程模型更改和代码更改),它抱怨dll解决和失败的路径之一。我回到LaBVIEW,现在,它无法再次加载dll。
我已经失去了近一个月的努力,所以任何帮助都表示赞赏。 我无法相信NI没有永久性的解决方案,或者如果有的话,除了上面引用的那个之外,我不知道它。
要么我这样做不正确,要么DLL需要以特定方式在VS 2010中构建,或者在复制新程序集时运行LabVIEW / TS .net服务种子进行修改,我不知道。