兄弟标签打印COM参考错误

时间:2014-10-24 19:41:31

标签: vb.net printing com

我在兄弟bpac SDK上度过了一段可怕的时光。我有一个应用程序,我正在尝试从中打印一个标签。之前有用,但我现在不知道出了什么问题。

这是我得到的错误: 由于以下错误,检索具有CLSID {B940C105-7F01-46FE-BF41-E040B9BDA83D}的组件的COM类工厂失败:80040154未注册类(HRESULT异常:0x80040154(REGDB_E_CLASSNOTREG))。

代码:

   'Set up the path and template variables
    Dim path As String = "LabelTemplates\SolutionIDtemplate.lbx"

    'Create the bpac document
    Dim doc As New bpac.Document

    If doc.Open(path) <> False Then

        doc.GetObject("objID").Text = id
        doc.GetObject("objExpDate").Text = expDate
        doc.GetObject("objName").Text = name

        'Print the label
        doc.StartPrint("", bpac.PrintOptionConstants.bpoDefault)
        doc.PrintOut(copies, bpac.PrintOptionConstants.bpoDefault)
        doc.EndPrint()
        doc.Close()

    Else

        MessageBox.Show("Error: " + CStr(doc.ErrorCode))

    End If

注意:该类位于注册表中,我的项目设置为构建为32位应用程序。我看过的每个地方都说要去Project&gt;属性&gt;构建标签&gt;目标CPU = x86。我这样做了,但问题仍然存在。任何帮助都会非常感激,因为我已经尝试了所有我能想到的东西。

提前致谢, 利

7 个答案:

答案 0 :(得分:3)

为了将来参考,请不要忘记为用户提供b-pac客户端设置(可在“\ Brother bPAC3 SDK \ Redist \”文件夹中找到)。它必须安装在客户端计算机上才能使用dll。或者会抛出此错误。

答案 1 :(得分:1)

当我开始使用.net 4时,我在为工作编写的应用程序上收到了同样的错误。这看起来像是在SDK中提供的示例代码。当我改变它以不检查开放路径时,我能够让它工作。

此外,请确保使用Bpac打印机安装了最新的驱动程序。这是我改变的代码。

  Dim path As String = My.Application.Info.DirectoryPath
  Dim doc As New bpac.Document
    doc = CreateObject("bpac.Document")
    doc.SetPrinter(doc.GetPrinterName().ToString, True)

    doc.Open(path + "/TesterLabel.lbx")
    doc.GetObject("objTicket").Text = lstTickets.Items.Item(0).ToString
    doc.GetObject("objTest").Text = issue
    doc.GetObject("objClaim").Text = strIssue
    doc.DoPrint(PrintOptionConstants.bpoDefault, "")
    doc.EndPrint()
    doc.Close()

答案 2 :(得分:0)

所以我重新安装了SDK,这似乎有效。感谢您的建议。

答案 3 :(得分:0)

我的解决方案是在Windows中安装打印机。

答案 4 :(得分:0)

对我来说,诀窍是安装正确版本的SDK SDK Version之后我安装了客户端驱动程序并且工作正常

答案 5 :(得分:0)

对我来说,它是将目标框架设置为.Net 4.0。我使用的是Brothers SDK:2020年7月7日发布的3.3.001(64位版本)

答案 6 :(得分:0)

我已经使用“项目”>“属性”>“构建”选项卡>“目标CPU anycpu”解决了-目标目标cpu any cpu。 记得看属性设置项目。