⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main2.cpp

📁 Borland c++编写
💻 CPP
字号:
#include "dos.h"
#include<stdio.h>   //  i/o函数
#include<string.h>  // 字符函数
#include<conio.h>   //  屏幕操作函数
#include<htxlcd.h> //   液晶显示子函数
#include<htlcd.h>    //  视窗定义.开关窗口.画框.监控电池状态
#include<commplus.h>   //  通信函数,如调用服务器.收发字符流.读入条形码
#include "cstream.h"
#include "Function.h"
#include <stdlib.h>
#include <io.h>
#include <time.h>
#include <fcntl.h>
#include "htproces.h"
#include "SUBFUN.h"
//*****************************
extern unsigned _stklen = 32786U;
extern unsigned _heaplen = 2048U;

unsigned int demolength;
unsigned unsigned char democtrl;
char dz[12];

//FILE * fhand;

//键盘输入**********************************************************
  void getpstr(char *pstr)
 {
  char s[10];
  char ch;
  int  i;

  for (i=0; i<8; i++)
  {
   do  ch=getch();

   while (((ch < '0') || (ch > '9')) && (ch!=0x0d));

    if (ch==0x0d)
    {
       s[i]=0x0;
       i=8;
    }
    else
    {
       printf("*");
       s[i]=ch;
    }
  }
  s[8]=0;
  strcpy(pstr, s);
  return;
 }
 //设置密码**********************************************************
      int repassword(void)
      {
      char s2[10];
      char s3[10];
      char s4[10];
      int k;
      ClrLCDScr();
      printf("输入新密码:");
       getpstr(s2);
	s2[8]=0;
	ClrLCDScr();
	printf("确定新密码:");
      getpstr(s3);
	 s2[8]=0;
      if (strcmp(s2,s3)==0)
	{
	      ClrLCDScr();

	 printf ("新密码成功");
	 getch();
    for(k=0;k<8;k++)
      {
       s4[k]=s2[k]^'yd';
      }
      s4[8]=0;
	 FILE * fh;
	fh=fopen("D:\\config.ini","rb+");
	 fwrite(s4,8,1,fh);
	   fclose(fh);
	}
	else
       {   ClrLCDScr();

	printf("新密码不成立");
		getch();
       }
	return 0 ;
     }
//*********************************************
int qdcd(void)
{
  int i;
  int lxg;
  MENU_ITM mainqd[5];
   mainqd[0].menubar="  0.当前月";
  mainqd[1].menubar="  1.上月";
   mainqd[2].menubar="  2.上上月";
   mainqd[3].menubar="  3.退出";
   mainqd[4].menubar=NULL;
  for(i=0;i<=3;i++)  mainqd[i].menukey=i+48;
  do{
    clrscr();
       i=putch((char)menu(mainqd,"  窃电时间",0,1,1));
    switch (i){
	case '0':
		clrscr();	//当前月;
		lxg=0;
		qdsj(lxg);
		break;
	case '1':                 //上月;
		 ClrLCDScr();
		 lxg=1;
		 qdsj(lxg);
		break;
	case '2':                  //上上月
	       ClrLCDScr();
		lxg=2;
		qdsj(lxg);
		break;
	case'3':
	   ClrLCDScr();
	   break;
    }
  }while(i!='3');
  return 0;
}

// 读手动菜单*************************************
 int sdcd()
{
  int i;
 MENU_ITM mainsd[6];
 mainsd[0].menubar="  0.六个月需量";
 mainsd[1].menubar="  1.六个月电能";
 mainsd[2].menubar="  2.窃电数据 ";
  mainsd[2].menubar[12]=16;
  mainsd[3].menubar="  3.电表数据";
  mainsd[4].menubar="  4.退出";
  mainsd[5].menubar=NULL;
 for(i=0;i<=4;i++)  mainsd[i].menukey=i+48;
do{
    clrscr();
   i=putch((char)menu(mainsd,"  手 动 抄 表",0,1,1));

      switch (i){
       case '0':
	   clrscr();
		lyxl();          //需量数据;
		break;
	case '1':
	clrscr();
	       lydn();        //六月电能;
		break;
	case '2':
		clrscr();
		  qdcd();          //窃电数据;
		break;
	case '3':
	       clrscr();
	       dqsj();         //实时数据;
		exit(0);
	case '4':
	      clrscr();
	     break;
    }
 }while(i!='4');
  return 0;
}

//广播校时***************************************************************
int  broadcost(void)
{
     char *Addr= new char[9];
     struct time  t;
     gettime(&t);
     struct date d;
     getdate(&d);
     Addr[0]=0;
     strcat(Addr, "99999999");
       ClrLCDScr();
     if (LwriteData(t,d,Addr)==0)
     {   ClrLCDScr();
	printf ("%s","广播校时完毕");
	getch();
     }
     delete [] Addr;
     return 0;
  }
//**************************************************************
//主程序
  int  main(){
  directvideo=0;
  FILE * fh;
fh=fopen("\\config.ini","rb+");
char password[10];
char s1[10];
char passw[10];
passw[8]=0;
int w;
fread(password,8,1,fh);
password[8]=0;
for(w=0;w<8;w++)
 {
  passw[w]=password[w]^'yd';
 }
int iLoop=0;
while(iLoop<3)
{
    ClrLCDScr();
    printf("输入密码:");
  getpstr(s1);
if(strcmp(s1,passw)!=0)
  {
    ClrLCDScr();
    iLoop++;
   printf("密码错误!");
    getch();
  }
  else
    break;
}
if(iLoop==3) return 0;
fclose(fh);



//***************************************
   int i;
  MENU_ITM mainmenu[5];   // mail menu
  mainmenu[0].menubar="  0.广播校时";
  mainmenu[1].menubar="  1.修改密码";
  mainmenu[2].menubar="  2.抄表数据 ";
  mainmenu[2].menubar[12]=16;
  mainmenu[3].menubar="  3.退出";
  mainmenu[4].menubar=NULL;
 for(i=0;i<=3;i++) mainmenu[i].menukey=i+48;
 char returnflag;
 do{
    ClrLCDScr();
    i=putch((char)menu(mainmenu,"   主 菜 单",0,1,1));
  switch (i){
       case '0':
		broadcost();     //广播校时
		break;
       case '1':
		repassword();  //修改密码
		break;
	case '2':

		sdcd();        //抄表数据
		break;
	case '3':

	     ClrLCDScr();
	     exit(0);
      }
   }while (i!='3');

  return (0);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -