实例介绍
【实例截图】
【核心代码】
/*****************************************************
* 制作时间: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;
}
标签: 命令
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明


网友评论
我要评论