基本信息
源码名称:Windows扩展命令程序(源码)
源码大小:0.04M
文件格式:.c
开发语言:C/C++
更新时间:2020-08-18
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
/***************************************************** * 制作时间:2020/7/21 * 当前版本:3.7.5.3 * 程序作者:ljs * 编写人数:1(个人) * 版权拥有:有 * 扫描病毒:无(原版没有) * 是否报毒:是 * 程序名称:Windows扩展命令程序 * 内核编写:C,E,C * 程序大小:大约10MB * 编译环境:Windows * 运行环境:Windows * 详细版本:Windows专业版 * 系统类型:64位操作系统 * 内部文件列表:command.exe * comword.exe * olly.dll * SkinH_EL.dll * sqlite3.dll * XCGUI.dll * compass.exe * * *******************************************************/ #ifndef EXTERN_C//定义为c文件 #ifdef __cplusplus//定义为c文件 #define EXTERN_C extern "C"//定义为c文件 #else//定义为c文件 #define EXTERN_C extern//定义为c文件 #endif//定义为c文件 #endif //定义为c文件 #include <stdio.h>//c文件基础函数 #include <stdlib.h>//c文件基础函数 #include <windows.h>//c文件基础函数 #include <io.h>//c文件基础函数 #include <conio.h>//c文件基础函数 #include <string.h>//c文件基础函数 #define BACKSPACE 8//定义变量 #define CHARLANG 96//定义变量 #include <assert.h>//验证程序断言 #include <complex.h>//支持复数算术运算 #include <ctype.h>//字符类型 #include <errno.h>//出错码 #include <fenv.h>//浮点环境 #include <float.h>//浮点常量 #include <inttypes.h>//整型格式转换 #include <iso646.h>//替代关系操作符宏 #include <limits.h>//实现常量 #include <locale.h>//局部类别 #include <setjmp.h>//非局部 #include <signal.h>//信号 #include <stdarg.h>//可变参数表 #include <stdbool.h>//布尔类型和值 #include <stddef.h>//标准定义 #include <stdint.h>//整型 #include <tgmath.h>//通用类型数学宏 #include <time.h>//时间和日期 #include <wchar.h>//宽字符支持 #include <wctype.h>//宽字符分类和映射支持 #include <math.h>//数字运算 #include <tchar.h> #include <fcntl.h> #define N 50//全局变量 #include <tlhelp32.h> //进程快照函数头文件 //--------------------------------------------------- #define gotoxyInPool(x, y) gotoxyWithFullwidth(x 9, y - 3)// 定位到游戏池中的方格 //--------------------------------------------------- #ifdef _MSC_VER // M$的编译器要给予特殊照顾 #if _MSC_VER <= 1200 // VC6及以下版本 #error 你是不是还在用VC6?! #else // VC6以上版本 #if _MSC_VER >= 1600 // 据说VC10及以上版本有stdint.h了 #include <stdint.h> #else // VC10以下版本,自己定义int8_t和uint16_t typedef signed char int8_t; typedef unsigned short uint16_t; #endif #ifndef __cplusplus // 据说VC都没有stdbool.h,不用C 编译,自己定义bool typedef int bool; #define true 1 #define false 0 #endif #endif #else // 其他的编译器都好说 #include <stdint.h> #ifndef __cplusplus // 不用C 编译,需要stdbool.h里的bool #include <stdbool.h> #endif #endif void zuozhe(){ printf(" 欢迎使用Windows扩展命令程序\n"); printf(" ——by:ljs\n\n\n"); printf(" 制作时间:2020/7/21\n"); printf(" 当前版本:3.7.5.3\n"); printf(" 程序作者:ljs\n"); printf(" 编写人数:1(个人)\n"); printf(" 版权拥有:有\n"); printf(" 扫描病毒:无(原版没有)\n"); printf(" 是否报毒:是\n"); printf(" 程序名称:Windows扩展命令程序\n"); printf(" 内核编写:C,E,C \n"); printf(" 程序大小:大约10MB\n"); printf(" 编译环境:Windows\n"); printf(" 运行环境:Windows\n"); printf(" 详细版本:Windows专业版 \n"); printf(" 系统类型:64位操作系统\n"); printf(" 内部文件列表:command.exe\n"); printf(" comword.exe\n"); printf(" olly.dll\n"); printf(" SkinH_EL.dll\n"); printf(" sqlite3.dll\n"); printf(" XCGUI.dll\n"); printf(" compass.exe\n"); } int shuom(){ HANDLE handle; //WORD wOldColorAttrs; //CONSOLE_SCREEN_BUFFER_INFO csbiInfo; handle = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置红色 printf(" 软件说明显示\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------\n"); SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);//恢复到原始颜色 printf(" 欢迎使用Windows扩展命令程序\n"); printf(" ——by:ljs\n"); printf("关于软件:\n"); printf(" 制作时间:2020/7/21\n"); printf(" 当前版本:3.7.5.3\n"); printf(" 程序作者:ljs\n"); printf(" 编写人数:1(个人)\n"); printf(" 版权拥有:有\n"); printf(" 扫描病毒:无(原版没有)\n"); printf(" 是否报毒:是\n"); printf(" 程序名称:Windows扩展命令程序\n"); printf(" 内核编写:C,E,C \n"); printf(" 程序大小:大约10MB\n"); printf(" 编译环境:Windows\n"); printf(" 运行环境:Windows\n"); printf(" 详细版本:Windows专业版 \n"); printf(" 系统类型:64位操作系统\n"); printf(" 内部文件列表:command.exe\n"); printf(" comword.dll\n"); printf(" olly.exe\n"); printf(" SkinH_EL.dll\n"); printf(" sqlite3.dll\n"); printf(" XCGUI.dll\n"); printf(" compass.dll\n\n\n\n"); printf("文件操作及使用方法:\n"); printf(" 格式 [文件] [参数1][参数2][参数3][参数4][参数5]\n"); printf("\n"); printf(" 参数1:(必填)\n"); printf(" /F 使用管理员权限\n"); printf(" /N 不使用管理员权限【不建议】\n"); printf("\n"); printf(" 参数2:(必填)\n"); printf(" /U 标识符属性U [不影响使用]\n"); printf(" /E 标识符属性E [不影响使用]\n"); printf(" /N 标识符属性N [不影响使用]\n"); printf(" 注意:若其中一个不好用(无法显示窗口)建议更换标识符\n"); printf("\n"); printf(" 参数3:(必填)\n"); printf(" /!exit 结束\n"); printf(" /KQPB 屏蔽win键,任务管理器\n"); printf(" /JCPB 解除屏蔽win键,任务管理器\n"); printf(" /savelog 先行时间\n"); printf(" /ljs 作者\n"); printf(" /xswindows 关于主界面\n"); printf(" /BJCK 查看edb数据库\n"); printf(" /EXEDB excel 转换 edb\n"); printf(" /HBEDB edb 数据库合并\n"); printf(" /HEX 文件反编译\n"); printf(" /JK 文件加壳\n"); printf(" /LJQ web网截\n"); printf(" /SQLDB SQL数据库操作工具\n"); printf(" /SQLITE SQL数据库操作工具\n"); printf(" /SQLMAN SQL数据库操作工具\n"); printf(" /WEB web服务器\n"); printf(" /ZDY 自定义网络协议\n"); printf(" /TPC TPC网络协议\n"); printf(" /JMWJ 加密文件\n"); printf(" /YS 端口和网络映射\n"); printf(" /WMI 获取硬件信息\n"); printf(" /JVW 扫描局域网\n"); printf(" /DK 端口转换监控\n"); printf(" /JC 进程管理和监控\n"); printf(" /LL 网络流量监控\n"); printf(" /WJZY 文件资源管理器(超文本浏览)\n"); printf(" /BM 字符编码查看器\n"); printf(" /JKNC 内存监控显示\n"); printf(" /DDOS DDOS多线程攻击网站\n"); printf(" /NTJC 进程文件详细查看\n"); printf(" /USB USB(U盘详细信息和查看)\n"); printf(" /ARP ARP欺骗攻击\n"); printf(" /DIE 结束所有窗口及本程序\n"); printf(" /FILE 获取文件字数行数等\n"); printf(" /CIP 扫描查看IP端口\n"); printf(" /AES 将文件转换为16进制和汇编代码\n"); printf(" /TS 程序调试和调试信息\n"); printf(" /NX 静态逆向文件源码信息\n"); printf("\n"); printf(" 参数4:(必填)\n"); printf(" /N 程序标识符[允许多开程序](现有窗口程序会强制关闭)\n"); printf(" /Y 程序标识符[禁止多开程序](现有窗口程序不会强制关闭)\n"); printf("\n"); printf(" 参数5:(在使用参数3‘/FILE’命令时必填)\n"); printf(" \"文件路径\" 文件输入参数\n"); printf("\n"); printf(" 注意:\n"); printf(" 1、在使用时请不要再末尾加pause等命令,有时影响使用\n"); printf(" 2、在使用多开程序窗口的时候请注意cpu的资源占用,小心死机\n"); printf(" 3、若无法显示窗口,建议更换标识符\n"); printf(" 4、若更换标识符后仍无法显示窗口,输入'/'查询命令,检查命令是否有误\n"); printf(" 5、在使用参数3的‘/FILE’命令时一定呀注意参数5为可用路径且参数5必填\n"); printf(" 6、参数5的路径要用英文\"\"包起来才好用,不然会有部分空格路径找不到文件【\"文件路径\"】\n"); printf("\n"); printf(" 命令[例子]:\n"); printf(" compass /N /E /WEB /Y {禁止管理员 标识符属性E 窗口为WEB 允许多开程序}\n"); printf(" compass /F /N /TPC /N {允许管理员 标识符属性N 窗口为TCP 禁止多开程序}\n"); printf(" compass /N /U /WEB /N {禁止管理员 标识符属性U 窗口为WEB 禁止多开程序}\n"); printf(" compass /N /U /FILE /N \"C:\\1.txt\"{禁止管理员 标识符属性U 窗口为文件信息 禁止多开程序 文件路径}\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------\n"); SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);//恢复到原始颜色 } bool getProcess(const char *procressName) //此函数进程名不区分大小写 { char pName[MAX_PATH]; //和PROCESSENTRY32结构体中的szExeFile字符数组保持一致,便于比较 strcpy(pName,procressName); //拷贝数组 CharLowerBuff(pName,MAX_PATH); //将名称转换为小写 PROCESSENTRY32 currentProcess; //存放快照进程信息的一个结构体 currentProcess.dwSize = sizeof(currentProcess); //在使用这个结构之前,先设置它的大小 HANDLE hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);//给系统内的所有进程拍一个快照 if (hProcess == INVALID_HANDLE_VALUE) { MessageBox(NULL, _T("CreateToolhelp32Snapshot()调用失败!"), _T("软件错误"), MB_OK); return false; } bool bMore=Process32First(hProcess,¤tProcess); //获取第一个进程信息 while(bMore) { CharLowerBuff(currentProcess.szExeFile,MAX_PATH); //将进程名转换为小写 if (strcmp(currentProcess.szExeFile,pName)==0) //比较是否存在此进程 { CloseHandle(hProcess); //清除hProcess句柄 return true; } bMore=Process32Next(hProcess,¤tProcess); //遍历下一个 } CloseHandle(hProcess); //清除hProcess句柄 return false; } int file(){ int a; a=0; char *mistake = "true";//判断文件完整性 if((access("XCGUI.dll",F_OK))!=-1) { printf("XCGUI.dll初始化成功\n"); system("cls");//减少显示信息//清屏 } else { system("title Windows扩展程序 ---by:ljs[文件初始化错误]"); MessageBox(NULL, _T(" 软件错误\n无法找到...\\XCGUI.dll\nXCGUI.dll初始化失败"), _T("初始化失败"), MB_OK); mistake = "flace"; } if((access("olly.dll",F_OK))!=-1) { printf("olly.dll初始化成功\n"); system("cls");//减少显示信息//清屏 } else { system("title Windows扩展程序 ---by:ljs[文件初始化错误]"); MessageBox(NULL, _T(" 软件错误\n无法找到...\\olly.dll\nolly.dll初始化失败"), _T("初始化失败"), MB_OK); mistake = "flace"; } if((access("SkinH_EL.dll",F_OK))!=-1) { printf("SkinH_EL.dll初始化成功\n"); system("cls");//减少显示信息//清屏 } else { system("title Windows扩展程序 ---by:ljs[文件初始化错误]"); MessageBox(NULL, _T(" 软件错误\n无法找到...\\SkinH_EL.dll\nSkinH_EL.dll初始化失败"), _T("初始化失败"), MB_OK); mistake = "flace"; } if((access("sqlite3.dll",F_OK))!=-1) { printf("sqlite3.dll初始化成功\n"); system("cls");//减少显示信息//清屏 } else { system("title Windows扩展程序 ---by:ljs[文件初始化错误]"); MessageBox(NULL, _T(" 软件错误\n无法找到...\\sqlite3.dll\nsqlite3.dll初始化失败"), _T("初始化失败"), MB_OK); mistake = "flace"; } if((access("command.exe",F_OK))!=-1 || (access("comword.exe",F_OK))!=-1) { printf("主程序初始化成功\n"); system("cls");//减少显示信息//清屏 } else { system("title Windows扩展程序 ---by:ljs[文件初始化错误]"); MessageBox(NULL, _T(" 软件错误\n无法找到...\\command.exe(或)\n无法找到...\\comword.exe(或)"), _T("文件缺失"), MB_OK); mistake = "flace"; } if(mistake =="flace") { printf("文件完整性检验失败\n"); exit(0); } } /********************************************** 函数名:IsProcess 作用: 关闭软件进程 参数: *path 软件名字符串,在最前面要加一个随意字符(不重复) SeaechCriteria 你加的那个字符 返回值:TRUE---成功 FALSE--失败 **********************************************/ BOOL IsProcess(char *path,char SearchCriteria) { char tmp[MAX_PATH] = {0}; /********************************** 函数名:strrchr 作用: 在指定的字符串中查找某一字符第一次出现的位置 参数: string 限定的字符串 char 规定要查找的字符 返回值:成功--该字符到结束 失败--FALSE **********************************/ strcpy(tmp,strrchr(path,SearchCriteria) 1); HANDLE hkernel32; HANDLE hSnap; PROCESSENTRY32 pe; BOOL bNext; pe.dwSize = sizeof(pe); /********************************** 函数名:CreateToolhelp32Snapshot 作用: 获取进程信息,为其建立快照 参数: dwFlag TH32CS_SNAPPROCESS包含所有的进程 th32ProcessID 0表示当前进程 返回值:INVALID_HANDLE_VALUE--调用失败 hWnd---调用成功 **********************************/ hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); /**************************************** 函数名:Process32First 作用: 获取进程中的第一个进程句柄 参数: hSnap 进程句柄 pe PROCESSENTRY32结构,用来储存进程信息 返回值:TRUE--成功 FALSE--失败 ****************************************/ bNext = Process32First(hSnap,&pe); while(bNext) { /***************************************** 函数名:stricmp 作用: 比较字符串,不区分大小写 参数: s1 s2 返回值:小于0 --- s1<s2 等于0 --- s2=s1 大于0 --- s1>s1 *****************************************/ if(0 == stricmp(pe.szExeFile,tmp)) { /*************************************************** 函数名:OpenProcess 作用: 打开一个已经存在的进程对象 参数: dwDesiredAccess 指定访问方法 blnheritHandle 句柄是否能有子进程继承(TRUE--是) dwProcessID 进程标识符 返回值:0---失败 hWnd---进程句柄 ***************************************************/ hkernel32 = OpenProcess(PROCESS_TERMINATE|PROCESS_CREATE_THREAD |PROCESS_VM_WRITE|PROCESS_VM_OPERATION,1,pe.th32ProcessID); if(0 == TerminateProcess(hkernel32,0)) return FALSE; return TRUE; } /********************************************** 函数名:Process32Next 作用: 获取下一个进程的句柄 参数: hSnap 句柄 返回值:TRUE---成功 FALSE---失败 **********************************************/ bNext = Process32Next(hSnap,&pe); } CloseHandle(hSnap); return FALSE; } int chushihua(){ char *filename; filename = "pass.txt"; remove(filename); char *filename1; filename1 = "password.txt"; remove(filename1); } char *b; int jiaohuan(char *a) { char ans[1001]; int now; int l=strlen(a); int i; for(i=0;i<l;i ) { if(a[i]>=97&&a[i]<=122)a[i]=a[i]-32; }//大小写转换 b = a; return 0; } void start(){ system("title Windows扩展程序 ---by:ljs"); system("cls"); //if(strcmp(argv[4], "//F")!=0){a1=0;} //else{exit(0);} printf("正在检验文件完整性\n"); file(); printf("文件完整性检验完成\n"); system("cls");//减少显示信息//清屏 } int Initializationdefinition(){ int n = 10; int sum = 1; bool flag = false; int num = n; } void GetLine(FILE *f) { int letter = 0, line = 0; //接收字符,行数 int mark = 0; while (!feof(f)) { letter = fgetc(f); if (letter == '\n') line ; } printf("共有行数 %d\n", line); } void GetWord(FILE *f) { int letter = 0, word = 0; //接收字符,词数 int mark = 0; //0为非字符,1为字符串 while (!feof(f)) { letter = fgetc(f); if ((letter >= 'a'&&letter <= 'z') || (letter >= 'A'&&letter <= 'Z') || letter == '_') { if (mark == 0) mark = 1; } else if (letter == '.') //防止头文件和浮点数的'.'被误判 { if (mark == 0 || mark == 1) continue; } else { if (mark == 1) { word ; mark = 0; } else continue; } } printf("共有词数 %d\n", word); } void GetLetter(FILE *f) { int letter = 0, num = 0; //接收字符,字符数 while (!feof(f)) { letter = fgetc(f); if (letter == '\n') //除换行标记外均视为字符 continue; num ; } printf("共有字符数 %d\n", num - 1); //除去eof标志 } void MoreData(FILE *f) { int letter = 0, code = 0, empty = 0, note = 0, mark = 0, notemark = 0; /* 接受字符,代码行数,空行数,注释行数,类型标记,注释行标记 mark的参数:0空行,1存在格式化字符的空行,2代码行,3注释行 notemark参数:0未判定,1单行注释,2多行注释 */ while (!feof(f)) { letter = fgetc(f); if (mark == 0 || mark == 1) //判定空行 { if (letter == ' ') continue; else if (letter == '\n') { empty ; mark = 0; continue; } else if ((letter == '{' || letter == '}') && mark == 0) { mark = 1; continue; } else { if (letter == '/') mark = 3; else mark = 2; } } if (mark == 2) //判定代码行 { while (!feof(f) && letter != '\n') letter = fgetc(f); mark = 0; code ; continue; } if (mark == 3) //判定注释行 { while (!feof(f)) { letter = fgetc(f); if (letter == '/' && notemark == 0) //单行注释起始判定 notemark = 1; else if (letter == '*' && notemark == 0) //多行注释起始判定 notemark = 2; else if (letter == '*' && notemark == 2) //多行注释结束判定 notemark = 3; if (notemark == 1) //单行注释结束判定 { while (!feof(f) && letter != '\n') letter = fgetc(f); note ; mark = 0; notemark = 0; break; } if (notemark == 2) //多行注释中间行数计算 { while (!feof(f) && letter != '\n') letter = fgetc(f); note ; } if (notemark == 3 && letter == '/') //多行注释结束判定 { while (!feof(f) && letter != '\n') letter = fgetc(f); note ; mark = 0; notemark = 0; break; } else if (notemark == 3 && letter != '*') //判定是否为注释中的* notemark = 2; } } } printf("共有空行数 %d 代码行数 %d 注释行数 %d\n", empty, code - 1, note); //除去eof行 } #define _CRT_SECURE_NO_WARNINGS int main(int argc, char ** argv) { //判断是否有空参数 /* int IsEmpty = 0; int length = strlen(argv[1]); int n; //遍历整个字符串,如果全为空格,则返回字符串也为空 for(n=0;n<length;n ) { //判断ASCII码是否为32 if(argv[n]==32) IsEmpty=1; else { IsEmpty=0; //存在一个字符则跳出循环 break; } } if(length == 0) exit(0); else if(IsEmpty) exit(0); else { int aa; aa=1; } IsEmpty = 0; length = strlen(argv[2]); //遍历整个字符串,如果全为空格,则返回字符串也为空 for(n=0;n<length;n ) { //判断ASCII码是否为32 if(argv[n]==32) IsEmpty=1; else { IsEmpty=0; //存在一个字符则跳出循环 break; } } if(length == 0) exit(0); else if(IsEmpty) exit(0); else { int aa; aa=1; } IsEmpty = 0; length = strlen(argv[3]); //遍历整个字符串,如果全为空格,则返回字符串也为空 for(n=0;n<length;n ) { //判断ASCII码是否为32 if(argv[n]==32) IsEmpty=1; else { IsEmpty=0; //存在一个字符则跳出循环 break; } } if(length == 0) exit(0); else if(IsEmpty) exit(0); else { int aa; aa=1; } */ HANDLE handle; handle = GetStdHandle(STD_OUTPUT_HANDLE); if(argv[1] == NULL) { shuom(); printf("\n\n\n\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置红色 printf(" 错误显示\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------"); printf("\n参数为空,错误.\n"); printf("----------------------------------------------------------------------\n"); SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);//恢复到原始颜色 return 0; } //文件及软件开始初始化 //检查文件是否存在 //设置标题 start(); //转换文件大小写(统一为大写) jiaohuan(argv[1]); argv[1] = b; jiaohuan(argv[2]); argv[2] = b; //参数3部分支持小写 jiaohuan(argv[3]); argv[3] = b; jiaohuan(argv[4]); argv[4] = b; //判断参数1 if(strcmp(argv[1], "/F")==0) { //判断参数2 if(strcmp(argv[2], "/U")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性U]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性U] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性U] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性U] [参数4错误]");} } else if(strcmp(argv[2], "/E")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性E]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性E] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性E] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性E] [参数4错误]");} } else if(strcmp(argv[2], "/N")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性N]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性N] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性N] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [标识符属性N] [参数4错误]");} } else { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [参数2错误]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [参数2错误] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [参数2错误] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限成功] [参数2错误] [参数4错误]");} } } else if(strcmp(argv[1], "/N")==0) { if(strcmp(argv[2], "/U")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性U]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性U] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性U] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性U] [参数4错误]");} } else if(strcmp(argv[2], "/E")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性E]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性E] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性E] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性E] [参数4错误]");} } else if(strcmp(argv[2], "/N")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性N]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性N] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性N] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [标识符属性N] [参数4错误]");} } else { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [参数2错误]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [参数2错误] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [参数2错误] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [管理员权限失败] [参数2错误] [参数4错误]");} } } else if(strcmp(argv[1], "/help")==0 || strcmp(argv[1], "/HELP")==0) { system("cls"); shuom(); getch(); } else { if(strcmp(argv[2], "/U")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性U]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性U] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性U] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性U] [参数4错误]");} } else if(strcmp(argv[2], "/E")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性E]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性E] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性E] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性E] [参数4错误]");} } else if(strcmp(argv[2], "/N")==0) { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性N]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性N] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性N] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [标识符属性N] [参数4错误]");} } else { system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [参数2错误]"); if(strcmp(argv[4], "/Y")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [参数2错误] [允许多开程序]");} else if(strcmp(argv[4], "/N")==0){system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [参数2错误] [禁止多开程序]");} else{system("title Windows扩展程序 ---by:ljs [文件初始化成功] [参数1错误] [参数2错误] [参数4错误]");} } } printf("。");//加载中 //判断参数3 if(strcmp(argv[3], "/NX")==0 || strcmp(argv[3], "/TS")==0 || strcmp(argv[3], "/AES")==0 || strcmp(argv[3], "/CIP")==0 || strcmp(argv[3], "/ARP")==0 || strcmp(argv[3], "/JMWJ")==0 || strcmp(argv[3], "/YS")==0 || strcmp(argv[3], "/WMI")==0 || strcmp(argv[3], "/JVWJ")==0 || strcmp(argv[3], "/DK")==0|| strcmp(argv[3], "/JC")==0|| strcmp(argv[3], "/LL")==0|| strcmp(argv[3], "/WJZY")==0|| strcmp(argv[3], "/BM")==0|| strcmp(argv[3], "/JKNC")==0|| strcmp(argv[3], "/DDOS")==0|| strcmp(argv[3], "/NTJC")==0|| strcmp(argv[3], "/USB")==0) { FILE *fp = NULL; fp = fopen("pass.txt", "w "); //第一个逗号前是文件位置。逗号之后是打开文件方式 printf("。"); if (getProcess("comword.exe")) { if(strcmp(argv[4], "/N")==0) { system("cls"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置红色 printf(" 错误显示\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------\n"); printf("已有窗口正在运行,请关闭后在运行或允许多开程序\n"); printf("----------------------------------------------------------------------\n"); SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);//恢复到原始颜色 getch(); if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } else { if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } } else { if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } system("start comword.exe"); } else if(strcmp(argv[3], "/help")==0 || strcmp(argv[3], "/HELP")==0 || strcmp(argv[3], "/?")==0 || strcmp(argv[3], "/?")==0){system("cls");shuom();getch();} else if(strcmp(argv[3], "/ljs")==0 || strcmp(argv[3], "/LJS")==0){system("cls");zuozhe();getch();} else if(strcmp(argv[3], "/BJCK")==0 || strcmp(argv[3], "/EXEDB")==0 || strcmp(argv[3], "/HBEDB")==0 || strcmp(argv[3], "/HEX")==0 || strcmp(argv[3], "/JK")==0 || strcmp(argv[3], "/LJQ")==0 || strcmp(argv[3], "/SQLDB")==0 || strcmp(argv[3], "/SQLITE")==0 || strcmp(argv[3], "/SQLMAN")==0 || strcmp(argv[3], "/WEB")==0 || strcmp(argv[3], "/ZDY")==0 || strcmp(argv[3], "/TPC")==0) { FILE *fp = NULL; fp = fopen("password.txt", "w "); //第一个逗号前是文件位置。逗号之后是打开文件方式 printf("。"); if (getProcess("command.exe")) { if(strcmp(argv[4], "/N")==0) { //int YN;结束进程 //YN = IsProcess("command.exe",'i');结束进程 system("cls"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置红色 printf(" 错误显示\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------\n"); printf("已有窗口正在运行,请关闭后在运行或允许多开程序\n"); printf("----------------------------------------------------------------------\n"); SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE);//恢复到原始颜色 getch(); if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } else { if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } } else { if( strcmp(argv[2], "/U")==0){fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else if( strcmp(argv[2], "/E")==0){fprintf(fp,"%s",argv[3]);/*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} else{fprintf(fp,"%s\n",argv[3]); /*逗号之前是一个指针,表明往里面输入。逗号之后fprintf是往文件里面输入*/} fclose(fp); //记得用完关闭文件 } } system("start command.exe"); } else if(strcmp(argv[3], "/DIE")==0) { if (KillMyProcess("command.exe")==0) printf(" --- 进程被终止\n"); else printf(" --- 进程没被终止 \n" ) ; if (KillMyProcess("comword.exe")==0) printf(" --- 进程被终止\n"); else printf(" --- 进程没被终止 \n" ) ; exit(0);//结束 } else if(strcmp(argv[3], "/FILE")==0) { int choose = 0; char com; //获取具体命令 FILE * fp = NULL; char* func = (char*)malloc(sizeof(char) * 50); //接收命令参数 fp = fopen(argv[5], "r"); if (fp == NULL) { printf("文件打开失败。\n"); } system("cls"); GetLetter(fp); rewind(fp); GetWord(fp); rewind(fp); GetLine(fp); rewind(fp); MoreData(fp); rewind(fp); getch(); } else { system("cls"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);//设置红色 printf(" 错误显示\n"); SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);//设置绿色和蓝色相加 printf("----------------------------------------------------------------------\n"); printf("参数3错误[无法打开指导的窗口程序] \n加载错误...\n"); printf("请单击应用查看(cmd命令[Compass & pause]\n"); printf("----------------------------------------------------------------------\n"); //恢复到原始颜色 SetConsoleTextAttribute(handle, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE); getch(); } return 0;//结束main主程序 } int KillMyProcess(char *exeName) { int rc = 0; HANDLE hSysSnapshot = NULL; PROCESSENTRY32 proc; hSysSnapshot = CreateToolhelp32Snapshot ( TH32CS_SNAPPROCESS, 0 ); if ( hSysSnapshot == (HANDLE)-1 ) return 1; proc.dwSize = sizeof(proc); if ( Process32First ( hSysSnapshot, &proc ) ) { do { if (stricmp(proc.szExeFile, exeName)==0) { HANDLE Proc_handle = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc.th32ProcessID); if (Proc_handle==NULL || !TerminateProcess(Proc_handle, 0)) rc = 1; else rc = 0; } } while ( Process32Next ( hSysSnapshot, &proc ) ); } CloseHandle ( hSysSnapshot ); return rc; }