gpt4 book ai didi

asp.net - 如何在使用 VB 6.0 从 ASPX 页面调用的 IIS 7.0(Windows Server 2008 R2) 中调试 Com dll(通过 Interop 访问)

转载 作者:行者123 更新时间:2023-12-02 10:39:05 25 4
gpt4 key购买 nike

谁能告诉我如何在 Windows Server 2008 R2 中使用 VB 6.0 调试 IIS 7.0 中的 Com Dll。我能够在使用互操作 dlll 从控制台应用程序访问的 VB 6.0 中命中断点。通过 IIS 7.0 中的 ASPX 页面,我收到以下异常

Unable to cast COM object of type 'XCreateUser.XAcctUserProfileClass' to interface type 'XCreateUser._XAcctUserProfile'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{7A48FABA-CCC8-4FA6-94E8-803F6CF121F2}' failed due to the following error: Error loading type library/DLL. (Exception from HRESULT: 0x80029C4A

已经构建并注册了 DLL,并生成了 com interop dll。

请有人对此进行说明

最佳答案

Already DLL built and registered

“已注册”是这里的问题,它没有正确注册。这是 CLR 在尝试查找 [ComVisible] .NET 组件的代理时生成的异常消息。需要代理才能从工作线程调用 COM 组件,而该工作线程不会执行任何操作来帮助使调用成为线程安全的。 MTA 中的线程,通常是线程池线程。

.NET 组件已注册到 Regasm.exe 。您忘记使用 /tlb 参数。

应该很容易修复。如果您仍然遇到问题,那么 SysInternals 的进程监视器是您的首选武器。

关于asp.net - 如何在使用 VB 6.0 从 ASPX 页面调用的 IIS 7.0(Windows Server 2008 R2) 中调试 Com dll(通过 Interop 访问),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23075457/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com