解决方案 »

  1.   

    [/code]
    数据库连接类ConDB.cs
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Data;
    using System.Data.Odbc;
    using System.Data.SqlClient;namespace MPrint
    {
        public static class ConDB
        {
            private static SqlConnection Con;        public static SqlConnection GetDB()
            {
                if (Con == null)
                {
                    string ConStr = "Data Source=192.168.1.11; User Id =sa;Password=!@#$%fuda110;Initial Catalog=UFDATA_001_2011";
                    Con = new SqlConnection(ConStr);
                    if (Con.State == ConnectionState.Closed)
                    {
                        Con.Open();
                    }
                }
                return Con;
            }        public static DataSet query(string SqlStr)
            {
                DataSet ds = new DataSet();
                SqlDataAdapter ada = new SqlDataAdapter(SqlStr, Con);
                ada.Fill(ds);
                Con.Close();
                return ds;
            }
        }
    }
    二维码生成类imgCode.csusing System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Drawing;
    using ThoughtWorks.QRCode.Codec;namespace MPrint
    {
        public static class imgCode
        {
           /// <summary>   
           /// 生成二维码图片   
           /// </summary>   
           /// <param name="codeNumber">要生成二维码的字符串</param>        
           /// <param name="size">大小尺寸</param>   
           /// <returns>二维码图片</returns>   
            public static Bitmap Create_ImgCode(string codeNumber, int size)  
            { 
                //创建二维码生成类   
                QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();  
                //设置编码模式   
                qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;  
                //设置编码测量度   
                qrCodeEncoder.QRCodeScale = size;  
                //设置编码版本   
               qrCodeEncoder.QRCodeVersion = 0;  
                //设置编码错误纠正   
                qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;  
                //生成二维码图片   
               System.Drawing.Bitmap image = qrCodeEncoder.Encode(codeNumber);  
                return image;  
            }      }
    }
      

  2.   

    跟一下,看到哪里会异常,加个try...catch
    VS自带的printer是会有BUG
    我用05编写的程序,自己机器上调试完全没问题
    但是到了目标机器上,关闭串口再打开,然后一打印,程序就退出了,什么错误都不报
    后来加了个try...catch,就完全好了,catch根本捕获不到异常,但是反正不退出了.
      

  3.   

    很可能是跟环境有关
    当时我的目标机上安装了JAVA环境
    然后串口就经常莫名其妙的死掉,死掉后重启串口,串口可用,但是打印就退出
    后来全部重装了系统,就没再出现问题了.
      

  4.   

    我在win7环境中测试没有问题,一旦在xp和2003上测试点击打印预览程序就莫名退出了,用try去捕获异常没有反应。
      

  5.   

    把皮肤控件IrisSkin4去掉,就可以了,但是我想用这款皮肤控件啊,怎么可以处理掉啊。
      

  6.   

    如果说是皮肤问题,我还真遇到过,用的是dotnetskin控件
    在WIN7下一切正常,但是回到XP下程序就莫名崩溃,报:无法写入收保护的内存
    后来各种查,发现ICON图标如果不是正方形就不行...