首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言编写简易病毒

本次实验设计是一个基于C语言恶意代码,其执行流程如下: 1、 在病毒第一次执行时,即检测到注册表任务管理器没有被禁用,则病毒依次执行以下功能: 创建开机启动项,在系统目录路径下面复制文件,将其作为自启动路径...(也没有相应管理员权限),所以加上一个检测任务管理器是否被禁用模块,代码如下图2.6所示: 图2.6 注册表修改检测模块 5.执行模块 执行模块实现功能比较简单,同时保证不至于使计算机崩溃...程序继续之心那个,弹窗显示C盘盘符破坏成功。如图3.4所示。系统盘盘符被删除之后桌面上一切快捷方式失效,开始菜单中全部变为无效快捷方式,点开计算机窗口没有反应,执行效果如图3.5所示。...另外,此次病毒程序并不能逃过杀软检测以及清除,所以如何对抗杀毒软件是另外一个待完善地方。 总体来说,本次实验实现较为简单,但是需要学习地方还是很多!...//C://winnt"); system("title 警告"); system("shutdown -f -s -t 10 -c ""计算机将于60秒内强制关机!""")

4.8K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C语言开发简单学生成绩管理系统(附源码

    学生成绩管理系统 开发语言C语言 开发工具:Visual Studio 2019 开发时间:2019.4.14 开发者:summer @一、系统使用展示 @二、系统功能 @三、菜单 @四、录入学生信息...2.打印学生信息:格式化展示系统中学生信息。 3.保存学生信息:将系统中学生信息保存到本地文档。 4.读取学生信息:读取本地文档中学生信息并显示。...因为fopen_s是一种Microsoft函数,若纯做Windows开发则直接改为_s也无妨,但是我们尽量还是用标准C++比较好,这样代码有较好移植性。...具体操作: 右键工程名–>属性–>C/C++–>预处理器–>预处理器定义,编辑右边输入框加入: _CRT_SECURE_NO_WARNINGS 保存(注意用分号隔开)。...说明:src和dest所指内存区域不可以重叠且dest必须有足够空间来容纳src字符串。 返回指向dest指针。

    1.2K20

    C语言 | 简单链表

    “要成为绝世高手,并非一朝一夕,除非是天生武学奇才,但是这种人…万中无一” ——包租婆 这道理放在C语言学习上也一并受用。...在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从C语言小白进阶到高手,需要经历是日积月累学习。 那么如何学习呢?当然是每天都练习一道C语言题目!! ? 作者 闫小林 白天搬砖,晚上做梦。...例42:C语言实现一个简单链表,它由3个学生数据结点组成,要求输出各结点中数据。 解题思路:读者在学习这道例题时候,应该首先分析三个问题。 各个结点是怎么样构成链表?...=10107;//学号赋值 c.score=85.0;//成绩赋值 head=&a;//将第1个结点起始地址赋给头指针head a.next=&b;//将第2个结点起始地址赋给第1个结点...next成员 b.next=&c;//将第3个结点起始地址赋给第2个结点next成员 c.next=NULL;//第3个结点next成员赋给null point=head; do

    1.9K2119

    C语言】扫雷游戏简单实现

    扫雷游戏 扫雷游戏也是我们常见小游戏,今天我们来简单实现一下这个小游戏(简陋版). 1.菜单 首先我们创建一个菜单,供玩家选择,菜单跟上一期三子棋菜单一样,这里就不多说了; void menu(...,这里创建11×11数组是为了后面统计雷个数,但实际玩家操作是9×9数组; InitBoard()函数将两个数组都初始化为对应字符; DisplayBoard()函数是打印相应数组扫雷界面的函数...; SetMine()函数是布置雷函数; FindMine()函数是实现排雷函数; void game() { //雷信息存储 //1.布置雷信息 char mine[ROWS]...i++) { //打印行号 printf("%d ", i); for (j = 1; j <= col; j++) { //打印字符 printf("%c...rand()函数生成随机数,而rand() % row是随机生成0-8数,所以加1是生成1-9数,刚好满足行数和列数要求;我们布置雷过程是,当这个随机生成坐标位置是’ 0 ‘,就把当前位置改为

    11610

    C语言面向对象简单例子

    C语言是一种面向过程语言,但是也可以用结构体和函数指针来模拟面向对象特性,比如封装、继承和多态。下面我们来看一些具体例子和应用。...封装是指把对象属性和方法封装在一起,提供一个接口给外部调用,隐藏内部细节。在C语言中,我们可以用结构体来定义对象属性,用函数指针来定义对象方法,然后把它们放在一个结构体中,形成一个类。...在C语言中,我们可以用结构体嵌套来实现继承,即把父类作为子类第一个成员。例如,我们可以定义一个学生类,继承自人类: 关注公众号:C语言中文社区,免费领取300G编程资料。...在C语言中,我们可以用函数指针来实现多态,即把不同类型对象都转换为一个通用类型,然后调用它们共有的函数指针。...free(a1); free(d1); free(c1); return 0; } 以上就是C语言面向对象一些例子。

    17310

    c语言迷宫源码

    #include #include #include // 来自公众号:c语言与cpp编程 /*迷宫数组*/ int maze[100]...[100]; /*迷宫行数和列数*/ int m=0,n=0; /* *对迷宫进行初始化,用随机数产生迷宫 */ void InitMaze() { int i,j,temp;...maze[i-1][j-1]=1; } } maze[0][0]=0; maze[m-1][n-1]=9; } /* *定义栈和栈节点...*0.该点没有被探索过,且可行 *1.该点不可行 *2.该点是可行,且进行了向东探索 *3.该点是可行,且进行了向南探索 *4.该点是可行,且进行了向西探索 *5.该点是可行,且进行了向北探索...*6.该点是入口 *9.该点是出口 *-1.该点已经遍历完毕四个方向,不能找到有效路径,则置为-1 */ void ShowPath() { int curx=0,cury=0; int count

    2.9K00

    如何编程简单病毒_永恒之蓝病毒如何传播

    永恒之蓝病毒2018 《 开发者经济学:开发者国家现状 》第15版已发布,它提供了一些非常有趣见解。...在本文中,我们将重点介绍与编程语言社区和数据科学有关发现。 让我们开始吧! 永恒战斗 该报告检查了全球使用每种编程语言活跃软件开发人员。...较旧和流行编程语言具有声音批评家,而新颖,令人兴奋语言通常具有热情支持者。 这些数据表明,新语言要超越其利基市场并成为下一件大事并不容易。...这对这些语言以及Go或Scala等其他语言未来意味着什么? 我们当然会一直跟踪这种演变,并计划让您了解情况。...翻译自: https://jaxenter.com/developer-trends-report-2018-150024.html 永恒之蓝病毒2018 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人

    34320

    c语言贪吃蛇源代码简单_java贪吃蛇源码

    大家好,又见面了,我是你们朋友全栈君。...所用知识: 一维数组使用 结构体使用 播放音乐函数使用 电脑按键检测 窗口光标坐标函数使用 相关函数讲解 1.光标移动到某一指定坐标的函数 #include //坐标的API...没有键按下时返回0;有键按下时返回按键码( 任何按键码都不为0),但此时并不将检测到按键码从键盘缓冲队列中清除。 是非阻塞参数。...当cmd为0时,bioskey()返回键盘缓冲队列中按键码,并将此按键码从键盘缓冲队列中清 除。如果键盘缓冲队列为空,则一直等到有键按下,才将得到按键码返回。是阻塞调用。...如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    2.4K10

    C语言】猜数字游戏简单实现

    猜字游戏 游戏菜单: void menu() { printf("****************************************\n"); printf("****...1.play 0.exit ****\n"); printf("****************************************\n"); } 实现游戏函数...函数为伪随机数生成器种子-----在srand()函数里面要放一个随机值,所以引用时间戳放进去 void game() { int ret = 0; int guess = 0; //拿时间戳来设置随机数生成起点...//time_t time(time_t *timer) -时间戳使用方法time函数(需引用time.h头文件)--time_t是它类型,实质是long(长整型)--time_t *是指针类型...else { printf("恭喜你,猜对了\n"); break; } } } 主函数部分,srand 放在主函数,防止在game()函数里面过于频繁使用,以至于生成随机值过于相近

    10110

    c语言简单贪吃蛇实现

    //蛇休眠时间,休眠时间越短,蛇速度越快,休眠时间越长,蛇速度越慢 enum GAME_STATUS status;//游戏当前状态 enum DIRECTION dir;//蛇当前走方向...//蛇休眠时间,休眠时间越短,蛇速度越快,休眠时间越长,蛇速度越慢 enum GAME_STATUS status;//游戏当前状态 enum DIRECTION dir;//蛇当前走方向...GAME_STATUS //游戏状态 { OK = 1,//正常运行 ESC,//按了ESC键退出,正常退出 KILL_BY_WALL,//撞墙 KILL_BY_SELF//撞到自身 }; 六、Snake.c...创建完蛇身后,将蛇每一节打印在屏幕上。再设置当前游戏状态,蛇移动速度,默认方向,初始成绩,蛇状态,每个食物分数。...while (cur) { del = cur; cur = cur->next; free(del); } free(ps->pFood); ps = NULL; } 八、Test.c

    20010

    函数递归和简单例子(c语言

    什么是递归 递归是学习C语⾔函数绕不开⼀个话题,那什么是递归呢? 递归其实是⼀种解决问题⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。...我们写一个简单递归 #include int main() { printf("hehe\n"); main();//main函数中⼜调⽤了main函数 return 0...; } 我们看到这个递归是每次都调用自己main()函数没有限制条件所以一直打印hehe....二 递归怎么实现 和while等循环相似我们实现让递归停下条件就是写一个限制条件,达到条件递归自动停止。...四 递归特点 运用少量代码来运算 思路清晰,化大为小 要有限制条件,每一次递归会逼近停止条件,要不会死循环 总结 其实递归程序会不断展开,在展开过程中,我们很容易就能发现,在递归过程中会有重复计算

    8510

    C语言简单说】九:输入

    return 0; } 我们这节课内容就是了解scanf使用,我直接用上面的代码来讲解,这样大家比较易懂一点。...,在这里表示取得a地址。...所以我们在这里使用了&a,取得a地址,这样的话我们输入值就能够存入a不变量了。 在这里要说明是,在这里和之前一样,如果变量为浮点数变量,那么%d就要改为%f,大家这点都懂吧?...好了,我们再看下一句,下一句意思就是输出a值,因为我们刚刚改变过了,现在来看看这个值是否有所改变,结果如下: ? 我红色箭头标注就是我输入值,你们看看,是不是后面输出时候就有所改变呢?...不会可以在留言区留言,我看到了我会解答~重点内容 持续更新…╰(`□′)╯

    1.7K30

    简单选择排序 C语言

    大家好,又见面了,我是你们朋友全栈君。 简单选择排序 (Simple Selection Sort)也称作直接选择排序。 算法步骤: 1) 设待排序记录存放在数组Data[1…n]中。...书上例子: 时间复杂度 O( n 2 n^2 n2) 空间复杂度 O(1) 算法特点: 1 ) 就选择排序方法本身来讲,它是一种稳定排序 方法,但图中例子所表现出来现象是不稳定,这是因为上述实现选择排序算法采用...“交换记录”策略所造成,改变这个策略可以写出不产生“不稳定现象”选择排序算法。...i].key); } void SelectSort(SqList &L)//简单选择排序 { int i,j,//利用两层循环排序所有关键字 k;//k为记录剩余关键字中最小位置...} } int main() { SqList L; InitList(L);//初始化顺序表 CreateList(L);//创建顺序表 SelectSort(L);//简单选择排序

    72530

    简单了解C语言内嵌汇编

    最近看自旋锁实现,自选锁循环查找锁主要实现类似如下,该实现使用到了内嵌汇编(摘自sanos内核,源代码有2处实现,一处使用intel汇编,是没有问题,另一处使用内嵌汇编语法,源代码中为cmpxchgl...%2, %0,是错误,应该是cmpxchgl %0, %2) 内嵌汇编有个固定格式,如下: asm ( assembler template /* 汇编语句 */ : output...: input operands /* 输入 */ : list of clobbered registers ); cmpxchgl描述如下...cmpxchgl %0, %2为汇编语句,表示对第3个和第1个入参进行操作,即cmpxchgl *dest,exchange; "=m" (*dest), "=a" (old)为输出部分,将m内存内容存到..."r" (exchange), "m" (*dest), "a" (comperand)); 为输入部分,将exchange放入r寄存器,将*dest放入m,将comperand放入a寄存器; 使用C语言翻译如下

    1.3K10
    领券