类未注册vfp web服务

类未注册vfp web服务,web,ole,visual-foxpro,Web,Ole,Visual Foxpro,我正在关注vfp web服务的进展。但是当我在任务窗格中测试结果时,我收到一个错误。它是: 错误:1429-WSDLOperation:WSDLOperation:实例化方法xxxx的分派对象失败的OLE IDispatch异常代码0 HRESULT=0x80040154:未注册类 xxxx是我的方法 我已经注册了dll并在IIS中设置了授权 有什么建议吗?听起来像是在编译VFP模块时,OlePublic类实例从未正确地放入Windows注册表。有时,如果您的管理级别不允许写入注册表,VFP将不

我正在关注vfp web服务的进展。但是当我在任务窗格中测试结果时,我收到一个错误。它是:

错误:1429-WSDLOperation:WSDLOperation:实例化方法xxxx的分派对象失败的OLE IDispatch异常代码0 HRESULT=0x80040154:未注册类

xxxx是我的方法

我已经注册了dll并在IIS中设置了授权


有什么建议吗?

听起来像是在编译VFP模块时,OlePublic类实例从未正确地放入Windows注册表。有时,如果您的管理级别不允许写入注册表,VFP将不会注册。如果是这种情况,请确保在编译应用程序之前以管理员用户身份启动VFP

另外,您是否将其构建为单线程或多线程DLL实例。此外,如果右键单击项目的/Project Info,然后单击Servers选项卡,它应该会显示所有公共类。实例设置是什么。。。单/多

此外,这可能是一个权限问题。如果您尝试将其作为ie:ASP.NET用户帐户或类似帐户加载的服务,并且该用户没有权限和/或访问该文件,则该服务将不允许创建该对象

为了测试对象是否在注册表中,您可以启动一个VFP实例,然后在命令窗口中尝试执行以下操作:

objTesting=CREATEOBJECT YourClass.YourObject

如果是这样的话,那么我会更深入地研究许可途径

后续行动

@wongchungyie,我不确定这是否是问题所在,但更有可能是许可。有一次,在更改开发机器时,我在尝试创建OlePublic COM服务器类的实例时也遇到了问题。为了确定问题所在,我在VFP中启动了一个简单的程序,除了

set procedure to YourClassThatHasOlePublic
set step on
o = createObject( "YourOlePublicClass" )
然后,当CreateObject正在进行所有初始化时,您可能会发现某些路径不可用,或者权限不可用,或者其他。。。找到并修复该元素,我就能够继续为我的客户工作


希望这能给你一些帮助。

它是多线程的……你能告诉我它是否正确吗?单个/多个项目如何影响我的项目?谢谢你的帮助@wongchungyie,参见修订/扩展答案。