cellIDDlg.cpp
上传用户:rx_deng
上传日期:2014-02-22
资源大小:21k
文件大小:4k
源码类别:

Windows Mobile

开发平台:

C/C++

  1. // cellIDDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "cellID.h"
  5. #include "cellIDDlg.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. char* GetCREG( char * comPort );
  12. char* GetCSQ( char * comPort );
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CCellIDDlg dialog
  15. CCellIDDlg::CCellIDDlg(CWnd* pParent /*=NULL*/)
  16. : CDialog(CCellIDDlg::IDD, pParent)
  17. {
  18. //{{AFX_DATA_INIT(CCellIDDlg)
  19. // NOTE: the ClassWizard will add member initialization here
  20. //}}AFX_DATA_INIT
  21. // Note that LoadIcon does not require a subsequent DestroyIcon in Win32
  22. m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
  23. }
  24. void CCellIDDlg::DoDataExchange(CDataExchange* pDX)
  25. {
  26. CDialog::DoDataExchange(pDX);
  27. //{{AFX_DATA_MAP(CCellIDDlg)
  28. // NOTE: the ClassWizard will add DDX and DDV calls here
  29. //}}AFX_DATA_MAP
  30. }
  31. BEGIN_MESSAGE_MAP(CCellIDDlg, CDialog)
  32. //{{AFX_MSG_MAP(CCellIDDlg)
  33. ON_WM_TIMER()
  34. ON_WM_CLOSE()
  35. ON_WM_DESTROY()
  36. //}}AFX_MSG_MAP
  37. END_MESSAGE_MAP()
  38. /////////////////////////////////////////////////////////////////////////////
  39. // CCellIDDlg message handlers
  40. char* caFile[500];
  41. int ict=0;
  42. BOOL CCellIDDlg::OnInitDialog()
  43. {
  44. CDialog::OnInitDialog();
  45. // Set the icon for this dialog.  The framework does this automatically
  46. //  when the application's main window is not a dialog
  47. SetIcon(m_hIcon, TRUE); // Set big icon
  48. SetIcon(m_hIcon, FALSE); // Set small icon
  49. CenterWindow(GetDesktopWindow()); // center to the hpc screen
  50. memset(caFile, 0, sizeof(caFile));
  51. // TODO: Add extra initialization here
  52. SetTimer(123, 3000, NULL);
  53. return TRUE;  // return TRUE  unless you set the focus to a control
  54. }
  55. typedef struct
  56. {
  57. char c[12];
  58. char    iLac[4];
  59. char s[2];
  60. char iId[4];
  61. } TCREG_DATA;
  62. int giLac = 0, giId = 0;
  63. void CCellIDDlg::OnTimer(UINT nIDEvent) 
  64. {
  65. // TODO: Add your message handler code here and/or call default
  66. TCREG_DATA* pData = (TCREG_DATA*)GetCREG(NULL);
  67. TCHAR szNum[5];
  68. int iLac = 0, iId = 0;
  69. // LAC
  70. szNum[0] = (unsigned short) pData->iLac[0];
  71. szNum[1] = (unsigned short) pData->iLac[1];
  72. szNum[2] = (unsigned short) pData->iLac[2];
  73. szNum[3] = (unsigned short) pData->iLac[3];
  74. szNum[4] = (unsigned short) '';
  75. _stscanf(szNum, TEXT("%x"), &iLac);
  76. // ID
  77. szNum[0] = (unsigned short) pData->iId[0];
  78. szNum[1] = (unsigned short) pData->iId[1];
  79. szNum[2] = (unsigned short) pData->iId[2];
  80. szNum[3] = (unsigned short) pData->iId[3];
  81. szNum[4] = (unsigned short) '';
  82. _stscanf(szNum, TEXT("%x"), &iId);
  83. if (iLac != giLac || iId != giId)
  84. {
  85. giId = iId;
  86. giLac = iLac;
  87. TCHAR caOt[50];
  88. wsprintf(caOt, TEXT("区域ID:%d, 基站ID:%d"), iLac, iId);
  89. SetDlgItemText(IDC_stcLab, caOt);
  90. SYSTEMTIME ctm;
  91. GetSystemTime(&ctm);
  92. memset(caOt, 0, sizeof(caOt));
  93. sprintf((char*)caOt, "区域ID:%d, 基站ID:%d, %d-%d-%d:%d-%d-%drn", iLac, iId,
  94. ctm.wYear, ctm.wMonth, ctm.wDay, (ctm.wHour+8)%24, ctm.wMinute, ctm.wSecond);
  95. caFile[ict] = new char[strlen((char*)caOt)+1];
  96. strcpy(caFile[ict], (char*)caOt);
  97. ict++;
  98. }
  99. CDialog::OnTimer(nIDEvent);
  100. }
  101. void CCellIDDlg::OnClose() 
  102. {
  103. // TODO: Add your message handler code here and/or call default
  104. CDialog::OnClose();
  105. return;
  106. }
  107. void CCellIDDlg::OnDestroy() 
  108. {
  109. FILE* fp = fopen("a.txt", "wr");
  110. for (int i=0; i<ict; i++)
  111. {
  112. fwrite(caFile[i], strlen(caFile[i]), 1, fp);
  113. }
  114. fclose(fp);
  115. fp = NULL;
  116. CDialog::OnDestroy();
  117. // TODO: Add your message handler code here
  118. }