| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.IO;
- using System.Configuration;
- using System.Windows.Forms;
- using System.Threading;
- using System.Diagnostics;
- using Saraff.Twain;
- using HXX.Scanner.Common;
- using HXX.Scanner.Biz.Socket;
- using HXX.Scanner.Biz.twain32.form;
- namespace HXX.Scanner.Biz
- {
- /// <summary>
- /// 构造tw使用的消息循环线程
- /// </summary>
- public class biz_thread
- {
- /// <summary>
- /// 消息循环线程
- /// </summary>
- public Thread main_thread { get; set; }
- /// <summary>
- /// 供tw使用的隐藏窗体
- /// </summary>
- public frmHandler frm_handler { get; set; }
- /// <summary>
- /// tw本体
- /// </summary>
- public Twain32 engine;
- /// <summary>
- /// 开启消息循环
- /// </summary>
- public void start()
- {
- main_thread = new Thread(() =>
- {
- try
- {
- frm_handler = new frmHandler();
- this.engine = new Twain32();
- this.engine.AppProductName = "Saraff.Twain.NET";
- this.engine.Country = TwCountry.CHINA;
- this.engine.IsTwain2Enable = false;
- this.engine.Language = TwLanguage.CHINESE_SIMPLIFIED;
- this.engine.ShowUI = false;
- this.engine.Parent = frm_handler;
- twain32_events.Init(engine);
- engine.AcquireCompleted += new System.EventHandler(twain32_events._twain32_AcquireCompleted);
- engine.AcquireError += new System.EventHandler<Saraff.Twain.Twain32.AcquireErrorEventArgs>(twain32_events._twain32_AcquireError);
- engine.EndXfer += new System.EventHandler<Saraff.Twain.Twain32.EndXferEventArgs>(twain32_events._twain32_EndXfer);
- engine.XferDone += new System.EventHandler<Saraff.Twain.Twain32.XferDoneEventArgs>(twain32_events._twain32_XferDone);
- engine.SetupFileXferEvent += new System.EventHandler<Saraff.Twain.Twain32.SetupFileXferEventArgs>(twain32_events._twain32_SetupFileXferEvent);
- engine.FileXferEvent += new System.EventHandler<Saraff.Twain.Twain32.FileXferEventArgs>(twain32_events._twain32_FileXferEvent);
- engine.DeviceEvent += new System.EventHandler<Saraff.Twain.Twain32.DeviceEventEventArgs>(twain32_events._twain32_DeviceEvent);
- Application.Run(frm_handler);
- }
- catch (Exception ee)
- {
- if (ee.Message.Contains("正在中止线程"))
- {
- LogManager.WriteLog("123");
- return;
- }
- LogManager.WriteLog(ee);
- }
- });
- main_thread.Start();
- }
- }
- }
|