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

📄 chatserv.cpp

📁 chatServer.exe ------服务端安装包。 ------安装后执行桌面上的Chat服务
💻 CPP
字号:
#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<dos.h>
#include<stdlib.h>
#include<windows.h>

int disp=0;        /*模式参数*/
char temp[50]="zhangzehua";    /*初始化聊天信息*/
char test[255];                /*信息内容变量*/

void loadno();                 /*不显示聊天信息*/
void loadyes();                /*显示聊天信息*/
void clr();                    /*清除信息*/
void gx();                     /*生产开启通道必要文件bat*/
void vbs();                    /*生成开启通道必要文件vbs*/
void gg();                     /*生成初始化聊天室公告*/
void cs();                     /*测试开启通道必要文件是否执行完成*/
void mod();                    /*服务显示模式选择*/
void delsss();                 /*生产用于删除开启通道残留文件vbs,bat*/
void exi();                    /*进程监控功能前半段*/
void sedlvbs();                /*生产开启进程监控程序必要文件vbs*/

main()
{
      system("title 服务主程序-C chat system server");
      printf("正在启动服务...\n");
      system("title 开启连接通道-C chat system server");
      gx();
      vbs();
      system("title 生成公告-C chat system server");
      gg();
      system("title 错误检测-C chat system server");
      cs();
      system("title 模式选择-C chat system server");
      mod();
      system("title 开启线程-C chat system server");
      sedlvbs();
      system("title 服务正在运行-C chat system server");
      printf("\n正在运行...\n");
      for(;;)
      {
      if(disp)                      /*模式选择*/
      {loadyes(); exi(); Sleep(100);}
      else {loadno(); exi(); Sleep(100);}
      }
}
void loadyes()
{
    long num=0,i;
    FILE *fp,ffp;
    int k;
    char tt[255];
    Sleep(100);
     if((fp=fopen("d:\\cchat\\data.dat","rb"))!=NULL)    /*加载信息*/
     {
       fscanf(fp,"%s",test);
       fclose(fp);
       k=strcmp(temp,test);
       if(k!=0)            /*判断信息内容*/
       {
       printf("%s\n",test);
       strcpy(temp,test);
       }
     }
     else return;
}

void loadno()
{
    FILE *fp;
    int k;
    char tt[50];
     if((fp=fopen("d:\\cchat\\sss.dat","rb"))!=NULL)     /*加载只显示客户状态内容*/
     {fclose(fp); system("type d:\\cchat\\sss.dat"); delsss(); vbs();}
     Sleep(500);

}

void clr()
{
     FILE *fp;
     for(;fp!=NULL;)
     {
     fp=fopen("d:\\cchat\\data.dat","wb");  /*信息内容初始化*/
     fprintf(fp,"%s",temp);
     fclose(fp);
     }
}
void gg()
{
     FILE *fp;
     if((fp=fopen("d:\\cchat\\gg.txt","wb"))!=NULL)          /*生产公告内容*/
     {
     fprintf(fp,"+----------------------------------+\r\n|            C语言聊天室           |\r\n|程序还未完善,如发现问题请联系本人.|\r\n|QQ:65559696                       |\r\n|By:张泽华                         |\r\n+----------------------------------+\r\n\r\n");
     fclose(fp);
     }
}
void gx()
{
     char bf=37;
     FILE *fp;
     if((fp=fopen("c:\\windows\\gxbat.bat","wb"))!=NULL)              /*生产开启通道*/
     {fprintf(fp,"@echo off\r\nnet user cchat 65559696 /add\r\nmkdir d:\\cchat\r\nCacls d:\\cchat /t /e /c /g cchat:f\r\nnet share chat=d:\\cchat\r\ndel c:\\windows\\cchatvbs.vbs\r\ndel %c0",bf); fclose(fp);}
     else {printf("erroe in open a file,press any key exit..."); getch(); exit(0);}
}
void vbs()
{
     FILE *fp;
     if((fp=fopen("c:\\windows\\cchatvbs.vbs","wb"))!=NULL)      /*生产执行开启通道文件*/
     {fprintf(fp,"CreateObject(\"WScript.Shell\").Run \"cmd /cc:\\windows\\gxbat.bat\",0"); fclose(fp); system("start c:\\windows\\cchatvbs.vbs");}
     else {printf("erroe in open the file,press any key exit..."); getch(); exit(0);}
     Sleep(1000);
}
void cs()
{
     FILE *fp;
     int i;
     for(i=0;i<10;i++)
     if((fp=fopen("c:\\windows\\cchatvbs.vbs","rb"))!=NULL)        /*检测开启通道是否完成*/
     {for(i=5;i>0;i--)printf("\x0d服务启动失败,%d秒后退出...",i);exit(0);}
     else {printf("服务启动成功...\n"); return;}
     Sleep(100);
}
void mod()
{
     char yn=0;
     Sleep(1000);
     printf("是否显示聊天内容功能(y,n)?");
     for(;;)                              /*模式选择y:是,n:否*/
     {
      if(yn == 121 || yn == 89)
      {disp=1; printf("%c",yn); return;}
      else if(yn == 110 || yn == 78)
      {disp=0; printf("%c",yn); return;}
      yn=getch();
     }
}
void delsss()
{
    FILE *fp;
    char bf=37;
    if((fp=fopen("c:\\windows\\gxbat.bat","wb"))!=NULL)       /*删除开启通道残留文件*/
     {fprintf(fp,"@echo off\r\ndel d:\\cchat\\sss.dat\r\ndel cchatvbs.vbs\r\ndel %c0",bf); fclose(fp);}
    else {printf("erroe in open a file,press any key exit..."); getch(); exit(0);}
}

void exi()
{
     FILE *fp;
     int k=0;
     char tt[255];
     if((fp=fopen("c:\\windows\\sewin.s","wb"))!=NULL)          /*监控进程功能随即写入流*/
     {fprintf(fp,"%d\r\n",rand()%5000); fclose(fp); return;}
}

void sedlvbs()
{
     FILE *fp;
     if((fp=fopen("c:\\windows\\sedlvbs.vbs","wb"))!=NULL)  /*生产开启监控程序vbs*/
     {fprintf(fp,"CreateObject(\"WScript.Shell\").Run \"cmd /csedl.exe\",0"); fclose(fp);system("start c:\\windows\\sedlvbs.vbs");}
     else {printf("erroe in open the file,press any key exit..."); getch(); exit(0);}
     Sleep(1000);
}

⌨️ 快捷键说明

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