#include "common__.h"
#include "main__.h"
#include "飞鸟快验__.h"
extern 主窗口类 主窗口;
int 主窗口类::运行()
{
	{
	HMODULE __hModule = GetModuleHandle(NULL);
	UINT __size = 0;
	void* __data = rc_findFileByID(IDR_UI_ZIP, &__size, __hModule);
	if (__data) {
		m_hWindow = (HWINDOW)XC_LoadLayoutZipMemEx(__data, __size, _布局文件.get(), NULL, NULL, NULL, NULL, NULL);
	}
#ifdef _DEBUG
	if(NULL==m_hWindow) {MessageBox(NULL, L"句柄为空:\"m_hWindow\"", L"提示", 0); return 0;}
#endif
	_注册.m_hEle = (HELE)XC_GetObjectByName(L"注册");
	_登录.m_hEle = (HELE)XC_GetObjectByName(L"登录");
	_充值.m_hEle = (HELE)XC_GetObjectByName(L"充值");
	_公告.m_hShape = XC_GetObjectByName(L"公告");
#ifdef _DEBUG
if(NULL==_注册.m_hEle) {MessageBox(NULL, L"绑定变量句柄为空:\"_注册\"", L"提示", 0); return 0;}
if(NULL==_登录.m_hEle) {MessageBox(NULL, L"绑定变量句柄为空:\"_登录\"", L"提示", 0); return 0;}
if(NULL==_充值.m_hEle) {MessageBox(NULL, L"绑定变量句柄为空:\"_充值\"", L"提示", 0); return 0;}
if(NULL==_公告.m_hShape) {MessageBox(NULL, L"绑定变量句柄为空:\"_公告\"", L"提示", 0); return 0;}
#endif
	XEle_RegEventCPP1(_注册.m_hEle, XE_BNCLICK, &主窗口类::注册_按钮点击);
	XEle_RegEventCPP1(_登录.m_hEle, XE_BNCLICK, &主窗口类::登录_按钮点击);
	XEle_RegEventCPP1(_充值.m_hEle, XE_BNCLICK, &主窗口类::充值_按钮点击);
	}
	Show(TRUE) ;
	CXText AppWeb = L"https://demo.fnkuaiyan.cn/Api?AppId=10002";
	CXText CryptoKeyAes = L"";
	CXText CryptoKeyPublic = L"-----BEGIN PUBLIC KEY-----"
L"\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDSd0VGS5aAEAyzyYB7admm2mGU"
L"\nR6U5a5in/KsefJol5TkP+uJhcx7DtQrNgG6pMk/hiaSBFDO9dv+FXPoKjyLU+QBo"
L"\nGzFwOnSHP6WuFEHvVs9b11kOfh+zE/dA7JohaOObYTxE0icpAmB7LWabWLilyge8"
L"\nJD0GiSCZEiL05LdwswIDAQAB"
L"\n-----END PUBLIC KEY-----\n";
	int CryptoType = 3;
	BOOL 判断状态;
	CXTextA 公告;
	判断状态 = 快验_初始化(AppWeb, CryptoKeyAes, CryptoKeyPublic, CryptoType);
	if(判断状态 == FALSE)
	{
		_公告.SetText(L"初始化失败,请检查参数");
	}
	公告 = 快验_取应用公告();
	xcl_log(公告);
	_公告.SetText((wchar_t*)公告.get()) ;
	return 0;
}
int 主窗口类::注册_按钮点击(HELE 来源句柄, BOOL* 是否拦截)
{
	xcl_log(L"注册_按钮点击");
	快验_注册用户((CXTextA)"A111111", (CXTextA)"A221112", (CXTextA)"A33113", (CXTextA)"A11444", (CXTextA)"A555", (CXTextA)"A666", (CXTextA)"7A77");
	return 0;
}
int 主窗口类::登录_按钮点击(HELE 来源句柄, BOOL* 是否拦截)
{
	xcl_log(L"登录_按钮点击");
	快验_调用公共函数((CXTextA)"测试网页访问", (CXTextA)"", TRUE);
	return 0;
}
int 主窗口类::充值_按钮点击(HELE 来源句柄, BOOL* 是否拦截)
{
	xcl_log(L"充值_按钮点击");
	快验_卡号充值((CXTextA)"hahahahaha", (CXTextA)"hahahahaha", (CXTextA)"111111");
	return 0;
}
主窗口类 主窗口;
int WINAPI wWinMain(HINSTANCE 模块句柄, HINSTANCE 先前句柄, wchar_t* 命令行, int 窗口显示标识)
{
	XInitXCGUI(TRUE) ;
	XC_EnableAutoRedrawUI(TRUE) ;
	HMODULE __hModule = GetModuleHandle(NULL);
	UINT __size = 0;
	void* __data = rc_findFileByID(IDR_UI_ZIP, &__size, __hModule);
	BOOL __bRetRes = XC_LoadResourceZipMem(__data, __size, LR"--(resource.res)--");
	if(0==__bRetRes) xcl_log(L"*加载资源文件失败: resource.res");
	主窗口.运行() ;
	XRunXCGUI() ;
	XExitXCGUI() ;
	return 0;
}
