在Visual Basic中使用对象的异常使用CLSID

时间:2018-06-05 20:21:17

标签: vb.net activex

我有一个旧项目,它在我现在正在更改的项目中用作DLL,该DLL具有以下代码:

Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
        writer.Write(
            String.Format(
                "<object id='{0}' servertype=""application/sigplus"" classid='clsid:69A40DA3-4D42-11D0-86B0-0000C025864A' width=""{1}px"" height=""{2}px"" ></object>",
                MyBase.ID,
                mWidth,
                mHeight
            )
        )

        'onfocus=""onStart();""

        MyBase.Render(writer)
    End Sub

在我当前的项目中,我在项目中引用了DLL,并且我在ASPX文件中也有这个对象:

<AD:Signature ID="sig" runat="server" Width="450" Height="60" HorizontalOffset="140" VerticalOffset="-130" SigHiddenFieldID="hfSig" NOSHiddenFieldID="hfNOS" visible="true"/>

我发现的问题出在这段代码中:

imgSuccess = sig.SaveSignatureAsImage(mTempDirectory, imgFileName, signature, If(mSignatureType = SignatureType.Clipboard, 6, 4))

其中sig是ASPX文件中的对象。

当我调试代码时,我得到以下异常:

  

{&#34;检索具有CLSID的组件的COM类工厂   {69A40DA3-4D42-11D0-86B0-0000C025864A}因以下原因失败   错误:800700c1不是有效的Win32应用程序。 (例外   HRESULT:0x800700C1)。&#34;}

我尝试将目标环境更改为两个项目中的任何CPU,我真的不知道在哪里找到可能的解决方案。如果你可以让我找到一个可能的解决方案,或任何帮助将不胜感激。

0 个答案:

没有答案