首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >注册dll,在visual foxpro 7,windows 7中

注册dll,在visual foxpro 7,windows 7中
EN

Stack Overflow用户
提问于 2012-04-12 02:13:59
回答 2查看 4.9K关注 0票数 0

我有一个用VFP 7编写的应用程序,在应用程序中的某个地方,我使用以下代码调用dll中的函数:

代码语言:javascript
复制
declare long FunctionName in DLL_NAME.dll string@, string@
.
.
.
RETURN FunctionName( StringParam1, StringParam2)

调用此函数会生成一个错误:

代码语言:javascript
复制
The following error has occurred:
Message: Cannot load 32-bit DLL d:\folder\DLL_NAME.dll.

我尝试使用32/64位regsvr...no luck注册动态链接库!

有助于识别问题的信息: dll文件不在本地,它在网络映射驱动器的文件夹中。

非常感谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-12 05:35:39

除了VFP不支持任何64位之外,我还会考虑到您试图通过网络加载dll的事实。

将其排除为可能的问题并将其复制到本地并从中加载...

尝试删除所有其他内容,包括您的VFP应用程序。我会直接从VFP命令窗口启动,除了一个简单的.prg文件什么也不做。在其中,只放置声明并引用dll文件的本地副本。设置参数的值,然后调用函数。

如果这不起作用,那么它在应用程序的哪个位置被调用都无关紧要……您已经消除了这一整套条件和环境。

这几乎就像我有时在我们的应用程序中尝试从互联网上请求数据时为客户提供的支持。我让他们手动进入他们的浏览器,输入我们的应用程序想要转到的任何URL。如果他们不能从浏览器访问它,这是来自他们的防火墙,IP拦截,或其他…这与我们的应用程序没有任何关系。你可能会遇到类似的情况。忽略所有其他元素,只让少数几个元素独立于问题本身进行绝对测试。

票数 0
EN

Stack Overflow用户

发布于 2012-04-15 11:14:49

我同意这个问题很可能是dlls位于共享网络上。过去,我已经通过将文件复制到本地计算机来解决此问题。

然而,根据这篇文章(下面的链接),如果您添加了一个特殊的配置文件,告诉.Net框架可以访问某个应用程序的网络dll,则可以允许FoxPro应用程序(或任何.exe )使用网络驱动器中的dll。

这是链接:http://www.west-wind.com/webconnection/docs/index.htm?page=_36e0qlogr.htm

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10111601

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档