系统中须要在浏览器,直接调用条码打印机,打印出产品条码。

现实中的条码打印机,品种繁多,非常难在一个程序中实现, 于是我们用已经支持全部条码打印机的bartender软件

调用它的api ,来实如今浏览器中打印条码。

以下是 代码实现:

Private Sub UserControl_Initialize()

'On Error Resume Next

Dim app1 As BarTender.Application

    Set app1 = CreateObject("BarTender.Application")

      app1.Quit

     

    

    

     If Err.Number <> 0 Then

        MsgBox ("您还没有安装bartender,请点击《条码打印说明》中的下载链接下载安装。")

     End If

     Err.Clear

    

     'Dim fso As Object

     'Set fso = CreateObject("scripting.filesystemobject")

    

     Dim fso As New Scripting.FileSystemObject

     If fso.FileExists("c:\sun.btw") = True Then

        path = "c:\sunsky1.btw"

    Else

        If fso.FileExists("d:\sun.btw") = True Then

            path = "d:\sun.btw"

        Else

            On Error Resume Next

            Err.Clear

           

            DownNetFile "http://www.erwm.org/suns.btw", "c:\sun.btw"

             path = "c:\sunsky1.btw"

            If Err.Number <> 0 Then

            Err.Clear

           

            DownNetFile "http://www.erwm.org/sun.btw", "d:\sun.btw"

             path = "d:\sunsky1.btw"

             If Err.Number <> 0 Then

                MsgBox ("您还没有下载打印模版,请点击《条码打印说明》中的下载链接下载安装。")

            End If

            End If

        End If

    End If

End Sub

Public Sub printone(ordernumber As String, itemnumber As String, qty As String, barcode As String, isshow As String)

Dim Format As BarTender.Format

     Set app = CreateObject("BarTender.Application")

    Set Format = app.Formats.Open(path)

 

    Format.SetNamedSubStringValue "barcode", barcode

    Format.SetNamedSubStringValue "ordernumber", ordernumber

    Format.SetNamedSubStringValue "qty", qty

    Format.SetNamedSubStringValue "itemnumber", itemnumber

    If isshow = "1" Then

    Format.PrintOut True, True

    Else

    Format.PrintOut

    End If

    Format.Close btDoNotSaveChanges

     app.Quit

End Sub

Public Function isgood() As String

    On Error Resume Next

   

       

    

    

End Function

Private Sub DownNetFile(ByVal nUrl As String, ByVal nFile As String)

     Dim XmlHttp, B() As Byte

     Set XmlHttp = CreateObject("Microsoft.XMLHTTP")

     XmlHttp.Open "GET", nUrl, False

     XmlHttp.Send

     If XmlHttp.ReadyState = 4 Then

         B() = XmlHttp.ResponseBody

         Open nFile For Binary As #1

         Put #1, , B()

         Close #1

     End If

     Set XmlHttp = Nothing

End Sub

在浏览器中通过bartender,调用条码打印机的active控件代码的实现的更多相关文章

  1. 编写在浏览器中不弹出警告的ActiveX控件

    我们在编写ActiveX控件时,如果用在浏览器中,经常都会弹出现在运行的脚本不安全的提示, 如果给客户使用,将会带来极大不便.按照MSDN的介绍通常有两种一种是实现IObjectSafe接口,一种是通 ...

  2. MVC中使用HTML Helper类扩展HTML控件

    文章摘自:http://www.cnblogs.com/zhangziqiu/archive/2009/03/18/1415005.html MVC在view页面,经常需要用到很多封装好的HTML控件 ...

  3. 安卓中的事件分发机制之View控件

    前言:Android 中与 Touch 事件相关的方法包括:dispatchTouchEvent(MotionEvent ev).onInterceptTouchEvent(MotionEvent e ...

  4. ASP.NET中共有哪几种类型的控件?其中,HTML控件、HTML服务器控件和WEB服务器控件之间有什么区别

    ASP.NET的控件包括WEB服务器控件.WEB用户控件.WEB自定义控件.HTML服务器控件和HTML控件.HTML控件.HTML服务器控件和WEB服务器控件之间的区别如下所示.q      HTM ...

  5. C# Winform开发程序调用VLC播放器控件播放视频.

    VLC是个好东西,支持的格式多,还无广告,关键还有调用它的播放控件不用安装. 开个文章记录下调用这个控件的流水账,以便以后需要的时候查阅 创建工程 首先新建一个Winform工程. 这里姑且叫做VLC ...

  6. 如何: 在 VS中的设计时刻主从表绑定控件到数据库

    这个示例展示了如何在 Visual Studio 2005 的设计时刻,把一个 data-aware 控件 (XtraGrid.XtraPivotGrid.XtraVerticalGrid 等) 绑定 ...

  7. winform中button点击后再点击其他控件致使button失去焦点,此时button出现黑色边线,去掉黑色边线的方法

    winform中button点击后再点击其他控件致使button失去焦点,此时button出现黑色边线,去掉黑色边线的方法 button的FlatAppearence属性下,设置BorderSize= ...

  8. IE8下调用Active控件

    之前在IE6下运行正常的Active控件,浏览器升级到IE8后全部失效,并呈浏览器崩溃状. 网上搜了一圈得到如下解决方法: 1.设置信任站点 2.还需要在IE浏览器菜单 “工具>Internet ...

  9. Excel中的表单控件和active控件

    EXCEL中有两种控件:表单控件和active控件 表单控件是excel5和excel95开始使用的,从excel97开始,active控件开始出现 关于表单控件和active控件的区别和使用范围,网 ...

随机推荐

  1. 演练2-4:CodeFirst实例之“电影网站制作”

    原文出处:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model EntityFr ...

  2. 回归基础从新认识——HTML+CSS

    前言 这段时间工作没那么繁杂,索性就想说来套系统的学习,之前去面试的时候,有被问及些基础的知识,居然回答不上来,也不能说是回答不上吧,回答的不全面.前端群上问了那个机构比较好,选择了慕课网.看了一段时 ...

  3. c++ 中CImage类Load函数,路径中含有空格应对策略!

    最近,在写一些东西的时候,需要用到CImage类将JPG各式的图片转换成BMP图片,传入的是图片的绝对地址:如C:\Users\Administrator\Documents\Visual Studi ...

  4. cocos2d-x游戏开发系列教程-坦克大战游戏之子弹的碰撞检测处理

    在上篇我们加上了简单的坦克之间的碰撞检测,这篇我们继续加上子弹之间, 子弹与坦克之间的碰撞检测,对于上一篇碰撞处理不太完美的地方我们继续改进. 1.子弹之间的碰撞 //玩家子弹和敌方子弹之间的碰撞 C ...

  5. 基于visual Studio2013解决C语言竞赛题之1005整理队形

         题目 解决代码及点评 /************************************************************************/ ...

  6. ios网络学习------1get post异步请求

    网络请求的步骤: get请求: #pragma mark - 这是私有方法,尽量不要再方法中直接使用属性,由于一般来说属性都是和界面关联的,我们能够通过參数的方式来使用属性 #pragma mark ...

  7. Hadoop源代码导入Eclipse

    须要进一步学习hadoop.须要看看内部源代码实现.因此须要将hadoop源代码导入都eclipse中,简单总结一下,详细过程例如以下: 首先确保已经安装了git.maven3.protobuf2.5 ...

  8. android 从其他app接收分享的内容

    Receiving Content from Other Apps[从其他app接收分享的内容] 就像你的程序能够发送数据到其他程序一样,其他程序也能够简单的接收发送过来的数据.需要考虑的是用户与你的 ...

  9. xpath的文本获取

    xpath中tidyText()获取标签下所有文本, text()本级文本, allText()各级所有文本.

  10. 基于visual Studio2013解决C语言竞赛题之1022最大数最小数

         题目 解决代码及点评 /************************************************************************/ ...