我有一个旧的。净2005年网站,有一些asp页和具有象的参考的问题访问。净dll。维护任务被传给我和原始开发者是无处可发现:(I开始。净已经这样我真的不掌握处理这dll地狱样的问题。

在箭头下面是我encourtering的 "(0x80131500) 目参没有设置的一个实例,一个对象。"

Set objCommon = Server.CreateObject("Wrapper.CommonFunctions")
  Dim machineBuilding
--->>>  If objCommon.IsMachineAccount(strLogin, machineBuilding) Then

我已经遵循了这些步骤:

  1. regasm/tbl/codebase mycomdll.dll
  2. gacutil/i mycomdll.dll
  3. 复制mycomdll.dll 到System32目录
  4. 从控制台,执行issreset
  5. 如果你dll是建立在框架2.0创建一个"dllhost.exe。config"的文件在system32目录,并把这个:

<?xml version="1.0"?> <configuration> <startup> <supportedRuntime version="v2.0.50727"/> <requiredRuntime version="v2.0.50727"/> </startup> </configuration>

6.- 重新启动IIS与issreset命令

也和这些人:

  1. 根据项目的性质 a.下\应用程序\会的信息 i。检查"使大会Com可见".b.在建立 i。检查"注册Com互操作"
  2. 不会签署它。
  3. 确保IUSR有充分权限的文件。
  4. 重新启动IIS通过iisreset冲任何缓存。

并且仍然没有成功运行的应用程序。任何更多的想法是什么来检查或做什么?谢谢!

埃米尔

有帮助吗?

解决方案 3

问题是申请是在寻找一个文件,该文件包含的数据库的主机名。

其他提示

HRESULT值非常相关。注意到'设施代码'在0x80131500、13中表示的误差源管理的代码。你已经得到了友好的翻译为1500年。

换句话说,托管码扔一个例外,它不是处理。这是不常见的课程、管理代码非常常引发的例外情况。特别是NullReferenceException,一个你所触发的。调试这个不是那么容易的,因为你正在运行的管理代码在不受管理的过程。不知道什么适当的程序是for IIS,通常完成与工具+附加以处理。最好的方式来解决这个被隔离的代码,写入一些单元的测试。

除此之外,制造业变,我作为一个很好的候选人NRE.你没有初始化。

顺便说一句:它没有任何与登记。这产生一种非常不同的错误。

我有一个解决方案类似于你的,但它早已不复存在。我仍然有一些信息,但是,我注意到,我的regasm声明是不同的。

regasm mycomdll.dll /tlb :mycomdll.tlb

你引用tbl而不是tlb-也许这就是问题吗?

我也觉得你应该仔细检查的参数值,然后调的方法与这些参数值通过一个快速和肮脏的。净客户来看,如果的方法引发的一个错误。

我还要确认我的经典ASP码相匹配你的...

set obj = server.CreateObject("mycomdll.myclass")
...
call obj.method(false)
...
myvar = obj.method2(param1, param2, param3)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top