MiniCA.h
上传用户:dengkfang
上传日期:2008-12-30
资源大小:5233k
文件大小:3k
源码类别:

CA认证

开发平台:

Visual C++

  1. // MiniCA.h : main header file for the MiniCA application
  2. //
  3. #if !defined(AFX_MiniCA_H__41C2EAF4_A86A_4078_B274_DD0AD886E153__INCLUDED_)
  4. #define AFX_MiniCA_H__41C2EAF4_A86A_4078_B274_DD0AD886E153__INCLUDED_
  5. #if _MSC_VER > 1000
  6. #pragma once
  7. #endif // _MSC_VER > 1000
  8. #ifndef __AFXWIN_H__
  9. #error include 'stdafx.h' before including this file for PCH
  10. #endif
  11. #include "resource.h" // main symbols
  12. #include ".ControlXpButtonSTThemeHelperST.h"
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CMiniCaApp:
  15. // See MiniCA.cpp for the implementation of this class
  16. //.EvpDebugEvp.lib .CAReleaseCA.lib
  17. #define UNIQE_NAME "{98D9ED48-66C1-4efa-82FF-68B27B514511}"//定义唯一的,以免冲突 GUIDGEN.EXE
  18. enum OsType
  19. {
  20. Win32s,
  21. WinNT3,
  22. Win95,
  23. Win98,
  24. WinME,
  25. WinNT4,
  26. Win2000,
  27. WinXP
  28. };
  29. class CMiniCaApp : public CWinApp
  30. {
  31. public:
  32. BOOL IsXpStyle();
  33. CThemeHelperST * GetThemeHelperST()
  34. {
  35. return &m_ThemeHelper;
  36. }
  37. static CString NormalCode(CString);
  38. static BOOL IsBig();
  39. static CString LmToHText(UCHAR * pValue,UINT uLen);
  40. static UINT HTextToLm(char * pValue,char * pOut); //16进制转乱码
  41. static int HexToTen(const char * pHex);//16--->10
  42. static BOOL AddRootToStore(char * lpCert, UINT lenCert);//加入der格式根证书
  43. static LPTSTR CMiniCaApp::_tCharAlloc(UINT uSize)
  44. {
  45. return (LPTSTR)malloc(sizeof(TCHAR) * uSize);
  46. }
  47. static VOID CMiniCaApp::_tCharFree(LPVOID p)
  48. {
  49. free(p);
  50. }
  51. //创建多级目录
  52. static BOOL WINAPI MakeSureDirectoryPathExists(LPCTSTR pszDirPath);
  53. BOOL IsHpxs();
  54. CString GetAppPath();
  55. CImageList * GetImgList();
  56. OsType GetOsType();
  57. BOOL GetCertPair(UINT ID, char * sCert, DWORD & dLen, CString & sPwd, 
  58. BOOL bInsideOnly = FALSE/*只内部标示*/, CColorListBox * pList = NULL);
  59. BOOL GetRootCert(char * sCert, DWORD & dCertLen, char * sKey, DWORD & dKeyLen, CString & sPwd,
  60.  BOOL bInsideOnly = FALSE/*只内部标示*/, CColorListBox * pList = NULL);
  61. CString GetMachineCode();
  62. UINT IsReg();
  63. CMiniCaApp();
  64. // Overrides
  65. // ClassWizard generated virtual function overrides
  66. //{{AFX_VIRTUAL(CMiniCaApp)
  67. public:
  68. virtual BOOL InitInstance();
  69. virtual void WinHelp(DWORD dwData, UINT nCmd = HELP_CONTEXT);
  70. virtual int ExitInstance();
  71. virtual BOOL PreTranslateMessage(MSG* pMsg);
  72. //}}AFX_VIRTUAL
  73. // Implementation
  74. //{{AFX_MSG(CMiniCaApp)
  75. // NOTE - the ClassWizard will add and remove member functions here.
  76. //    DO NOT EDIT what you see in these blocks of generated code !
  77. //}}AFX_MSG
  78. DECLARE_MESSAGE_MAP()
  79. private:
  80. // HANDLE m_hOneInstance;
  81. CString m_AppPath;
  82. BOOL m_bHpxs;
  83. CImageList m_ImgList;
  84. BOOL CheckRegCode(CString username,CString regcode,int type = TRUE);//验证注册码
  85. // int HexToTen(const char * pHex);//16--->10
  86. BOOL CheckSolfCode(CString pathExt/*被验证文件路径*/,CString dllName/*dll名称*/,
  87. UINT dllId = 1/*资源ID*/);//检验验证码
  88. CStringArray m_HelpArray;
  89. static BOOL m_bIsBig;
  90. static CString Gb2Big5(CString sGb);
  91. static CString Big2Gb(CString sBig);
  92. BOOL CharSetIsBig();
  93. CThemeHelperST m_ThemeHelper;
  94. // Enable checkbox only if running under XP
  95. // if (m_ThemeHelper.IsAppThemed()) GetDlgItem(IDC_CHKTOOLBAR)->EnableWindow(TRUE);
  96. };
  97. /////////////////////////////////////////////////////////////////////////////
  98. //{{AFX_INSERT_LOCATION}}
  99. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  100. #endif // !defined(AFX_MiniCA_H__41C2EAF4_A86A_4078_B274_DD0AD886E153__INCLUDED_)