89 lines
3.2 KiB
C#
89 lines
3.2 KiB
C#
using System;
|
|
using System.Text;
|
|
using System.Runtime.InteropServices;
|
|
|
|
using Cosmos.UserFrame;
|
|
|
|
/*-----------------------------------------------------------------------------------------------*/
|
|
// 설 명 : POS 주변장치 입력 이벤트 관련클래스
|
|
// 작 성 자 :
|
|
// 변경 이력 :
|
|
/*-----------------------------------------------------------------------------------------------*/
|
|
namespace Cosmos.Common
|
|
{
|
|
/// <summary>
|
|
/// POS 주변장치 입력 이벤트 관련클래스
|
|
/// </summary>
|
|
public class PosOLEDevice
|
|
{
|
|
/// <summary>
|
|
/// IC READER 입력 델리게이트
|
|
/// </summary>
|
|
/// <param name="a"></param>
|
|
/// <param name="b"></param>
|
|
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
|
|
public delegate void DelegateIcReader(int a, StringBuilder b);
|
|
|
|
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
|
|
public delegate void CallbackIc(int returnValue, StringBuilder returnData);
|
|
|
|
//#20171016 IC리더기 펌웨어 업데이트 Start, srlee
|
|
/// <summary>
|
|
/// IC 리더기 펌웨어 다운로드 상태 확인
|
|
/// </summary>
|
|
/// <param name="progress"></param>
|
|
/// <param name="total"></param>
|
|
/// <returns></returns>
|
|
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
|
|
public delegate void CallbackRegFunc(int progress, int total);
|
|
//#20171016 IC리더기 펌웨어 업데이트 End, srlee
|
|
|
|
/// <summary>
|
|
/// 주변장치 입력 델리게이트
|
|
/// </summary>
|
|
/// <param name="sDevice">주변장치형태</param>
|
|
/// <param name="sData1">데이터1</param>
|
|
/// <param name="sData2">데이터2</param>
|
|
/// <param name="sData3">데이터3</param>
|
|
public delegate void DelegateOlePos(string sDevice, string sData1, string sData2, string sData3);
|
|
|
|
/// <summary>
|
|
/// 델리게이트 선언 변수
|
|
/// </summary>
|
|
public static DelegateOlePos m_delegateOlePos = null;
|
|
|
|
/// <summary>
|
|
/// 델리게이트 이벤트 핸들 설정
|
|
/// </summary>
|
|
/// <param name="delegateOPOS"></param>
|
|
public static void SetEventHandle(DelegateOlePos delegateOPOS)
|
|
{
|
|
try
|
|
{
|
|
m_delegateOlePos = delegateOPOS;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
UserLog.WriteLogFile(UserCom.LOG_ERROR, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|
"PosOleDevice.SetEventHandle()", "Exception." + ex.Message);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 델리게이트 이벤트 핸들 해제
|
|
/// </summary>
|
|
public static void ReleaseEventHandle()
|
|
{
|
|
try
|
|
{
|
|
m_delegateOlePos = null;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
UserLog.WriteLogFile(UserCom.LOG_ERROR, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name,
|
|
"PosOleDevice.ReleaseEventHandle()", "Exception." + ex.Message);
|
|
}
|
|
}
|
|
}
|
|
}
|