#pragma once

// Machine generated IDispatch wrapper class(es) created by Microsoft Visual C++

// NOTE: Do not modify the contents of this file.  If this class is regenerated by
//  Microsoft Visual C++, your modifications will be overwritten.

/////////////////////////////////////////////////////////////////////////////
// CFp_clockctrl1 wrapper class

class CFp_clockctrl1 : public CWnd
{
protected:
	DECLARE_DYNCREATE(CFp_clockctrl1)
public:
	CLSID const& GetClsid()
	{
		static CLSID const clsid
			= { 0x87733EE1, 0xD095, 0x442B, { 0xA2, 0x0, 0x6D, 0xE9, 0xC, 0x5C, 0x83, 0x18 } };
		return clsid;
	}
	virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle,
						const RECT& rect, CWnd* pParentWnd, UINT nID, 
						CCreateContext* pContext = NULL)
	{ 
		return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID); 
	}

    BOOL Create(LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, 
				UINT nID, CFile* pPersist = NULL, BOOL bStorage = FALSE,
				BSTR bstrLicKey = NULL)
	{ 
		return CreateControl(GetClsid(), lpszWindowName, dwStyle, rect, pParentWnd, nID,
		pPersist, bStorage, bstrLicKey); 
	}

// Attributes
public:


// Operations
public:

// _DFP_CLOCK

// Functions
//

	BOOL GetEnrollData(long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, long dwBackupNumber, long * dwMachinePrivilege, VARIANT * dwEnrollData, long * dwPassWord)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_PI4 VTS_PVARIANT VTS_PI4 ;
		InvokeHelper(0x4, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord);
		return result;
	}
	BOOL SetEnrollData(long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, long dwBackupNumber, long dwMachinePrivilege, VARIANT * dwEnrollData, long dwPassWord)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_PVARIANT VTS_I4 ;
		InvokeHelper(0x5, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord);
		return result;
	}
	BOOL DeleteEnrollData(long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, long dwBackupNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x6, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber);
		return result;
	}
	BOOL ReadSuperLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x7, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetSuperLogData(long dwMachineNumber, long * dwTMachineNumber, long * dwSEnrollNumber, long * dwSMachineNumber, long * dwGEnrollNumber, long * dwGMachineNumber, long * dwManipulation, long * dwBackupNumber, long * dwYear, long * dwMonth, long * dwDay, long * dwHour, long * dwMinute)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x8, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwTMachineNumber, dwSEnrollNumber, dwSMachineNumber, dwGEnrollNumber, dwGMachineNumber, dwManipulation, dwBackupNumber, dwYear, dwMonth, dwDay, dwHour, dwMinute);
		return result;
	}
	BOOL ReadGeneralLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x9, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetGeneralLogData(long dwMachineNumber, long * dwTMachineNumber, long * dwEnrollNumber, long * dwEMachineNumber, long * dwVerifyMode, long * dwYear, long * dwMonth, long * dwDay, long * dwHour, long * dwMinute)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0xa, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwTMachineNumber, dwEnrollNumber, dwEMachineNumber, dwVerifyMode, dwYear, dwMonth, dwDay, dwHour, dwMinute);
		return result;
	}
	BOOL ReadAllSLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0xb, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetAllSLogData(long dwMachineNumber, long * dwTMachineNumber, long * dwSEnrollNumber, long * dwSMachineNumber, long * dwGEnrollNumber, long * dwGMachineNumber, long * dwManipulation, long * dwBackupNumber, long * dwYear, long * dwMonth, long * dwDay, long * dwHour, long * dwMinute)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0xc, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwTMachineNumber, dwSEnrollNumber, dwSMachineNumber, dwGEnrollNumber, dwGMachineNumber, dwManipulation, dwBackupNumber, dwYear, dwMonth, dwDay, dwHour, dwMinute);
		return result;
	}
	BOOL ReadAllGLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0xd, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetAllGLogData(long dwMachineNumber, long * dwTMachineNumber, long * dwEnrollNumber, long * dwEMachineNumber, long * dwVerifyMode, long * dwYear, long * dwMonth, long * dwDay, long * dwHour, long * dwMinute)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0xe, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwTMachineNumber, dwEnrollNumber, dwEMachineNumber, dwVerifyMode, dwYear, dwMonth, dwDay, dwHour, dwMinute);
		return result;
	}
	BOOL GetDeviceStatus(long dwMachineNumber, long dwStatus, long * dwValue)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0xf, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwStatus, dwValue);
		return result;
	}
	BOOL GetDeviceInfo(long dwMachineNumber, long dwInfo, long * dwValue)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x10, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwInfo, dwValue);
		return result;
	}
	BOOL SetDeviceInfo(long dwMachineNumber, long dwInfo, long dwValue)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x11, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwInfo, dwValue);
		return result;
	}
	BOOL EnableDevice(long dwMachineNumber, long bFlag)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 ;
		InvokeHelper(0x12, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, bFlag);
		return result;
	}
	BOOL EnableUser(long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, long dwBackupNumber, long bFlag)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x13, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber, bFlag);
		return result;
	}
	BOOL SetDeviceTime(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x14, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetDeviceTime(long dwMachineNumber, long * dwYear, long * dwMonth, long * dwDay, long * dwHour, long * dwMinute, long * dwDayOfWeek)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x15, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwYear, dwMonth, dwDay, dwHour, dwMinute, dwDayOfWeek);
		return result;
	}
	BOOL PowerOnAllDevice()
	{
		BOOL result;
		InvokeHelper(0x16, DISPATCH_METHOD, VT_BOOL, (void*)&result, NULL);
		return result;
	}
	BOOL PowerOffDevice(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x17, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL ModifyPrivilege(long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, long dwBackupNumber, long dwMachinePrivilege)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x18, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber, dwMachinePrivilege);
		return result;
	}
	BOOL ReadAllUserID(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x19, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetAllUserID(long dwMachineNumber, long * dwEnrollNumber, long * dwEMachineNumber, long * dwBackupNumber, long * dwMachinePrivilege, long * dwEnable)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x1a, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnable);
		return result;
	}
	BOOL GetSerialNumber(long dwMachineNumber, BSTR * lpszSerialNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PBSTR ;
		InvokeHelper(0x1b, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, lpszSerialNumber);
		return result;
	}
	BOOL ClearKeeperData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x1c, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetLastError(long * dwErrorCode)
	{
		BOOL result;
		static BYTE parms[] = VTS_PI4 ;
		InvokeHelper(0x1d, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwErrorCode);
		return result;
	}
	long GetBackupNumber(long dwMachineNumber)
	{
		long result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x1e, DISPATCH_METHOD, VT_I4, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetProductCode(long dwMachineNumber, BSTR * lpszProductCode)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PBSTR ;
		InvokeHelper(0x1f, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, lpszProductCode);
		return result;
	}
	BOOL EmptyEnrollData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x20, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL EmptyGeneralLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x21, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL EmptySuperLogData(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x22, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetUserName(long DeviceKind, long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, VARIANT * lpszUserName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_PVARIANT ;
		InvokeHelper(0x23, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, DeviceKind, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, lpszUserName);
		return result;
	}
	BOOL SetUserName(long DeviceKind, long dwMachineNumber, long dwEnrollNumber, long dwEMachineNumber, VARIANT * lpszUserName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_PVARIANT ;
		InvokeHelper(0x24, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, DeviceKind, dwMachineNumber, dwEnrollNumber, dwEMachineNumber, lpszUserName);
		return result;
	}
	BOOL GetCompanyName(long dwMachineNumber, VARIANT * dwCompanyName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PVARIANT ;
		InvokeHelper(0x25, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwCompanyName);
		return result;
	}
	BOOL SetCompanyName(long dwMachineNumber, long vKind, VARIANT * dwCompanyName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PVARIANT ;
		InvokeHelper(0x26, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, vKind, dwCompanyName);
		return result;
	}
	BOOL GetDoorStatus(long dwMachineNumber, long * dwValue)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 ;
		InvokeHelper(0x27, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwValue);
		return result;
	}
	BOOL SetDoorStatus(long dwMachineNumber, long dwValue)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 ;
		InvokeHelper(0x28, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwValue);
		return result;
	}
	BOOL GetBellTime(long dwMachineNumber, long * dwValue, long * dwBellInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x29, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwValue, dwBellInfo);
		return result;
	}
	BOOL SetBellTime(long dwMachineNumber, long dwValue, long * dwBellInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x2a, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwValue, dwBellInfo);
		return result;
	}
	BOOL SetIPAddress(BSTR * lpszIPAddress, long dwPortNumber, long dwPassWord)
	{
		BOOL result;
		static BYTE parms[] = VTS_PBSTR VTS_I4 VTS_I4 ;
		InvokeHelper(0x2b, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, lpszIPAddress, dwPortNumber, dwPassWord);
		return result;
	}
	BOOL OpenCommPort(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x2c, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	void CloseCommPort()
	{
		InvokeHelper(0x2d, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
	}
	void ConvertPassword(long dwSrcPSW, long dwDestPSW, long dwLength)
	{
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x2e, DISPATCH_METHOD, VT_EMPTY, NULL, parms, dwSrcPSW, dwDestPSW, dwLength);
	}
	BOOL IsAllow(long dwPrivilege, long dwWhich)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 ;
		InvokeHelper(0x2f, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwPrivilege, dwWhich);
		return result;
	}
	BOOL GetModel(long dwMachineNumber, long * dwdeviceKind, long * dwDeviceVer)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x30, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwdeviceKind, dwDeviceVer);
		return result;
	}
	void UsbEnrollDataStart()
	{
		InvokeHelper(0x32, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
	}
	BOOL SetUsbEnrollData(long dwEnrollNumber, long dwBackupNumber, long dwMachinePrivilege, VARIANT * dwEnrollData, long dwPassWord, VARIANT * lpszUserName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_PVARIANT VTS_I4 VTS_PVARIANT ;
		InvokeHelper(0x33, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwEnrollNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord, lpszUserName);
		return result;
	}
	BOOL GetUsbEnrollData(long * dwEnrollNumber, long * dwBackupNumber, long * dwMachinePrivilege, VARIANT * dwEnrollData, long * dwPassWord, VARIANT * lpszUserName)
	{
		BOOL result;
		static BYTE parms[] = VTS_PI4 VTS_PI4 VTS_PI4 VTS_PVARIANT VTS_PI4 VTS_PVARIANT ;
		InvokeHelper(0x34, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwEnrollNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord, lpszUserName);
		return result;
	}
	BOOL EnrollDataSaveTOFile(LPWSTR  LPSZFileName)
	{
		BOOL result;
		static BYTE parms[] = VTS_BSTR ;
		InvokeHelper(0x35, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, LPSZFileName);
		return result;
	}
	BOOL EnrollDataReadFromFile(LPWSTR LPSZFileName)
	{
		BOOL result;
		static BYTE parms[] = VTS_BSTR ;
		InvokeHelper(0x36, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, LPSZFileName);
		return result;
	}
	BOOL BenumbAllManager(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x37, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetUserCtrl(long dwMachineNumber, long dwEnrollNumber, long * dwWeekTimeID, long * dwGroupID, long * nSyear, long * nSmonth, long * nSday, long * nEyear, long * nEmonth, long * nEday)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 VTS_PI4 ;
		InvokeHelper(0x38, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwWeekTimeID, dwGroupID, nSyear, nSmonth, nSday, nEyear, nEmonth, nEday);
		return result;
	}
	BOOL SetUserCtrl(long dwMachineNumber, long dwEnrollNumber, long dwWeekTimeID, long dwGroupID, long nSyear, long nSmonth, long nSday, long nEyear, long nEmonth, long nEday)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x39, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber, dwWeekTimeID, dwGroupID, nSyear, nSmonth, nSday, nEyear, nEmonth, nEday);
		return result;
	}
	BOOL DeleteUserCtrl(long dwMachineNumber, long dwEnrollNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 ;
		InvokeHelper(0x3a, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwEnrollNumber);
		return result;
	}
	BOOL ClearUserCtrl(long dwMachineNumber)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 ;
		InvokeHelper(0x3b, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber);
		return result;
	}
	BOOL GetWeekPassTime(long dwMachineNumber, long dwIndex, long * dwTimeInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x3c, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwTimeInfo);
		return result;
	}
	BOOL SetWeekPassTime(long dwMachineNumber, long dwIndex, long * dwTimeInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x3d, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwTimeInfo);
		return result;
	}
	BOOL GetDayPassTime(long dwMachineNumber, long dwIndex, long * dwTimeInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x3e, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwTimeInfo);
		return result;
	}
	BOOL SetDayPassTime(long dwMachineNumber, long dwIndex, long * dwTimeInfo)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x3f, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwTimeInfo);
		return result;
	}
	BOOL GetLockGroup(long dwMachineNumber, long dwIndex, long * dwGroup)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PI4 ;
		InvokeHelper(0x40, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwGroup);
		return result;
	}
	BOOL SetLockGroup(long dwMachineNumber, long dwIndex, long dwGroup)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_I4 ;
		InvokeHelper(0x41, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, dwIndex, dwGroup);
		return result;
	}
	BOOL SetServerPortandtick(long dwPortNumber, long Timeout)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 ;
		InvokeHelper(0x42, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwPortNumber, Timeout);
		return result;
	}
	BOOL USBReadGeneralLogData(LPWSTR LPSZFileName)
	{
		BOOL result;
		static BYTE parms[] = VTS_BSTR;
		InvokeHelper(0x43, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, LPSZFileName);
		return result;
	}
	BOOL USBReadSuperLogData(LPWSTR LPSZFileName)
	{
		BOOL result;
		static BYTE parms[] = VTS_BSTR;
		InvokeHelper(0x44, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, LPSZFileName);
		return result;
	}
	BOOL SetInoutchar(long dwMachineNumber, long index, BSTR * dwInOoutName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PBSTR ;
		InvokeHelper(0x45, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, index, dwInOoutName);
		return result;
	}
	BOOL GetInoutchar(long dwMachineNumber, long index, BSTR * dwInOoutName)
	{
		BOOL result;
		static BYTE parms[] = VTS_I4 VTS_I4 VTS_PBSTR ;
		InvokeHelper(0x46, DISPATCH_METHOD, VT_BOOL, (void*)&result, parms, dwMachineNumber, index, dwInOoutName);
		return result;
	}
	void AboutBox()
	{
		InvokeHelper(DISPID_ABOUTBOX, DISPATCH_METHOD, VT_EMPTY, NULL, NULL);
	}

// Properties
//

long GetCommPort()
{
	long result;
	GetProperty(0x1, VT_I4, (void*)&result);
	return result;
}
void SetCommPort(long propVal)
{
	SetProperty(0x1, VT_I4, propVal);
}
BOOL GetReadMark()
{
	BOOL result;
	GetProperty(0x2, VT_BOOL, (void*)&result);
	return result;
}
void SetReadMark(BOOL propVal)
{
	SetProperty(0x2, VT_BOOL, propVal);
}
long GetBaudrate()
{
	long result;
	GetProperty(0x3, VT_I4, (void*)&result);
	return result;
}
void SetBaudrate(long propVal)
{
	SetProperty(0x3, VT_I4, propVal);
}
BOOL GetIsUSB()
{
	BOOL result;
	GetProperty(0x31, VT_BOOL, (void*)&result);
	return result;
}
void SetIsUSB(BOOL propVal)
{
	SetProperty(0x31, VT_BOOL, propVal);
}


};
