我们需要从较旧的会计系统中获取数据。我们收到了一个dll,可以让我们访问所需的数据。它包括我们导入的类型库。
如果我们从与会计系统相同的目录运行我们的测试应用程序,一切正常。如果我们尝试从不同的目录运行我们的应用程序,我们会收到以下错误:
动态绑定RTS
运行时DLL“OOPS”,版本3.1,入口点oops 未记录在注册表中,未找到或与要求不兼容 动态绑定的COBOL程序。 RTS的动态绑定需要: 运行时DLL“OOLSM”,至少是版本3.1
有人能提供一些有用的信息吗?
我们应该在目录中有某种cobol运行时吗?还是在路上?或者在注册表中注册?
谢谢,
-Vegar
更新
设置系统%path%以包括会计系统的路径似乎可以解决问题。将其作为用户变量包含起来由于某种原因没有相同的效果。
答案 0 :(得分:2)
你用的是什么Cobol? 我用Microfocus NetExpress 3.1完成了这一年,所有工作都很好。 我编写COBOL DLL来访问COBOL数据文件,并编写Delphi DLL以向旧COBOL系统添加新功能。
是的,我用来设置运行时路径,即环境变量COBDIR,还有其他路径,但通常%PATH%和%COBDIR%就足够了。
如果您更多地介绍您使用的COBOL编译器,以及您调用的dll接口如何,我将很容易为您提供帮助。
也许“Dependence Walker”可以帮助您确定哪些运行时文件丢失,如果是的话。 http://www.dependencywalker.com/
答案 1 :(得分:1)
如果它来自会计应用程序的目录,但不是另一个目录,我首先尝试的是将该目录添加到您的路径中。
答案 2 :(得分:0)
除非已经加载到内存中,否则Windows会查找程序在其PATH环境变量中列出的每个位置以及应用程序所在目录中请求的DLL。