// GetEncrypInfo.cpp : 定义应用程序的类行为。 // #include "stdafx.h" #include "GetEncrypInfo.h" #include "GetEncrypInfoDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #endif // CGetEncrypInfoApp BEGIN_MESSAGE_MAP(CGetEncrypInfoApp, CWinAppEx) ON_COMMAND(ID_HELP, &CWinApp::OnHelp) END_MESSAGE_MAP() // CGetEncrypInfoApp 构造 CGetEncrypInfoApp::CGetEncrypInfoApp() { // TODO: 在此处添加构造代码, // 将所有重要的初始化放置在 InitInstance 中 } // 唯一的一个 CGetEncrypInfoApp 对象 CGetEncrypInfoApp theApp; // CGetEncrypInfoApp 初始化 void RefreshVersion(Encryptlockkernel::YtInfoVer1 &tagYtInfo, CHAR *szkeypath) { // 返回的软件版本号; INT nSoftVer = -1; // 返回的加密锁域名值字符串; CHAR szBranchId[MAX_PATH] = {0}; typedef struct __STVERSION__ { int nVersion; CString strVersion; }STVersion, *pSTVersion; STVersion tag_stVersion[6] = { { 0, _T("儿童全能版") }, { 1, _T("儿童座席版") }, { 2, _T("儿童企业版") }, { 3, _T("婚纱全能版") }, { 4, _T("婚纱座席版") }, { 5, _T("婚纱企业版") } }; INT nUSBPort = -1; if (!Encryptlockkernel::ReadYtInfoVer1(0, tagYtInfo, nUSBPort, szkeypath, MAX_PATH) ) AfxMessageBox(_T("获取加密锁版本信息失败")); } BOOL CGetEncrypInfoApp::InitInstance() { // 如果一个运行在 Windows XP 上的应用程序清单指定要 // 使用 ComCtl32.dll 版本 6 或更高版本来启用可视化方式, //则需要 InitCommonControlsEx()。否则,将无法创建窗口。 INITCOMMONCONTROLSEX InitCtrls; InitCtrls.dwSize = sizeof(InitCtrls); // 将它设置为包括所有要在应用程序中使用的 // 公共控件类。 InitCtrls.dwICC = ICC_WIN95_CLASSES; InitCommonControlsEx(&InitCtrls); CWinAppEx::InitInstance(); AfxEnableControlContainer(); ////////////////////////////////////////////////////////////////////////// #if 0 // 修复加密狗版本号; Encryptlockkernel::YtInfoVer1 tagYtInfo; CHAR szkeypath[MAX_PATH] = {0}; Encryptlockkernel::ReSetPassWord(); RefreshVersion(tagYtInfo, szkeypath); if ( Encryptlockkernel::ChangeVersion(szkeypath, tagYtInfo.nSoftVer, tagYtInfo.nSoftVer) ) { tagYtInfo.nSoftVer = tagYtInfo.nSoftVer; AfxMessageBox(_T("成功修复加密锁版本!")); RefreshVersion(tagYtInfo, szkeypath); } else { AfxMessageBox(_T("修复加密锁版本失败!")); } return FALSE; #endif #if 0// 注册医院跟踪系统; Encryptlockkernel::YtInfoVer1 tagYtInfo; CHAR szkeypath[MAX_PATH] = {0}; Encryptlockkernel::ReSetPassWord(); if ( tagYtInfo.dwShortKey == 587482) { if ( Encryptlockkernel::ChangeHospital(szkeypath, TRUE) ) { AfxMessageBox(_T("注册医院系统成功!")); } } else { CString str; str.Format(_T("加密锁id不对 %d"), tagYtInfo.dwShortKey); AfxMessageBox(str); } return FALSE; #endif #if 0 // 获取加密锁ID值; DWORD dwShortKey = 0; INT nVersion = 0; CHAR szkeypath[MAX_PATH] = {0}; BOOL bFind = Encryptlockkernel::FindYtUSB(dwShortKey, nVersion, szkeypath ); if ( bFind ) { CString strKey; strKey.Format(_T("ID值:%d"),dwShortKey); AfxMessageBox(strKey); } return TRUE; #endif ////////////////////////////////////////////////////////////////////////// // 标准初始化 // 如果未使用这些功能并希望减小 // 最终可执行文件的大小,则应移除下列 // 不需要的特定初始化例程 // 更改用于存储设置的注册表项 // TODO: 应适当修改该字符串, // 例如修改为公司或组织名 SetRegistryKey(_T("应用程序向导生成的本地应用程序")); CGetEncrypInfoDlg dlg; m_pMainWnd = &dlg; INT_PTR nResponse = dlg.DoModal(); if (nResponse == IDOK) { // TODO: 在此放置处理何时用 // “确定”来关闭对话框的代码 } else if (nResponse == IDCANCEL) { // TODO: 在此放置处理何时用 // “取消”来关闭对话框的代码 } // 由于对话框已关闭,所以将返回 FALSE 以便退出应用程序, // 而不是启动应用程序的消息泵。 return FALSE; }