using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Configuration;
using System.Threading;
using Saraff.Twain;
using HXX.Scanner.Common;
using HXX.Scanner.Biz.Socket;
namespace HXX.Scanner.Biz
{
public partial class twain32_events
{
///
/// 文件已经扫描,但尚未生成文件,用于赋予文件名
///
///
///
public static void _twain32_SetupFileXferEvent(object sender, Saraff.Twain.Twain32.SetupFileXferEventArgs e)
{
//if (config_environment.use_source_ui && config_environment.first_page)
//{
// biz_engine_prepare.prepare();
// config_environment.first_page = false;
//}
if (checkCancel(e))
{
//设置马上要保存的文件名
try
{
if (config_environment.scan_type == ScanType.Test_Panel_1_Side || config_environment.scan_type == ScanType.Test_Panel_2_Sides)
{
//e.FileName = config_manager.Get("dataDir") + "\\" + string.Format(@"测试{0}.{1}", DateTime.Now.ToString("MMddHHmmssfff"), engine.Capabilities.ImageFileFormat.GetCurrent().ToString().ToLower());
//e.FileName = config_manager.Get("dataDir") + "\\" + string.Format(@"测试{0}.{1}", DateTime.Now.ToString("MMddHHmmssfff"), "jpeg");
e.FileName = config_manager.Get("dataDir") + "\\" + string.Format(@"测试{0}.{1}", DateTime.Now.ToString("MMddHHmmssfff"), "bmp");
}
else
{
var fileInfo = file_manager.get_file_info(engine);
e.FileName = fileInfo.file_full_name;
}
}
catch (Exception ex)
{
LogManager.WriteLog(ex);
}
}
}
///
/// 检查扫描是否被取消,取消扫描的操作通常在这里操作
///
///
///
private static Boolean checkCancel(Twain32.SerializableCancelEventArgs e)
{
if (!config_environment.scan_state)
{
try
{
e.Cancel = true;
biz_scanHistory.end_new();
biz_scanFinishBatch.Work(2, true);
//config_environment.stop_status = 2;
biz_scanFinish.Work(null, new ResponseEntity() { Status = 0, Message = "扫描被中止" });
}
catch (Exception ex)
{
LogManager.WriteLog(ex);
}
}
return config_environment.scan_state;
}
}
}