Autorun.inf文件(2):改变硬盘分区图标
改变F盘图标。
原理:在f盘下新建一个Autorun.inf文件,文件内容是
[AutoRun]
icon=favicon.ico
准备名为favicon.ico图标文件,将其放在工程目录里,设计程序将它移动到f盘下
令计算机重启使Atuorun.inf生效。
完整程序如下:
#include<windows.h>
#include <tchar.h>
#include<stdio.h> int main()
{
//复制favicon.ico到F盘
//获得不包含文件名的程序自身路径
char szPath[MAX_PATH + ]={};
GetModuleFileName(NULL, szPath, MAX_PATH);
int i,pos;
//得到Dubeg上一级目录
for (i=;i<MAX_PATH;i++)
{
//姑且这么写吧
if (szPath[i]=='D'&&szPath[i+]=='e'&&szPath[i+]=='b'&&szPath[i+]=='u'&&szPath[i+]=='g')
{
pos = i-;
}
}
szPath[pos]='\0';
char iconPath[];
sprintf(iconPath,"%s\\favicon.ico",szPath);
printf("%s",iconPath); CopyFile(iconPath,"F:\\favicon.ico",); //在F盘下写Autorun文件 FILE *fp;
char strFileName[]="F:\\Autorun.inf";
fp=fopen(strFileName,"w+"); fprintf(fp,"[AutoRun]\n");
fprintf(fp,"icon=favicon.ico\n"); fclose(fp); //重启计算机使Autorun.inf生效
HANDLE hToken;
TOKEN_PRIVILEGES tkp; OSVERSIONINFO osvi;
osvi.dwOSVersionInfoSize=sizeof(OSVERSIONINFO);
if(GetVersionEx(&osvi)==)
return false; if(osvi.dwPlatformId==VER_PLATFORM_WIN32_NT)
{
if(!OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken))
return false;
LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&tkp.Privileges[].Luid);
tkp.PrivilegeCount=;
tkp.Privileges[].Attributes=SE_PRIVILEGE_ENABLED; AdjustTokenPrivileges(hToken,FALSE,&tkp,,(PTOKEN_PRIVILEGES)NULL,);
} ExitWindowsEx(EWX_REBOOT,); return ;
}
Autorun.inf文件(2):改变硬盘分区图标的更多相关文章
- 关于Autorun.inf文件
配置Autorun.inf文件可以使双击磁盘时,自动运行某一应用程序.但是现在只支持CD或者DVD媒体了(以前硬盘也可以) 关于Autorun.inf的组成部分可以参考https://msdn.mic ...
- WAS7.0安装补丁升级程序无法替换文件 java/docs/autorun.inf解决办法
OS:Win7 64bit WAS版本:WASND_7.0_Windows_x64_C1G2JML.zip WAS补丁升级程序版本:7.0.0.13-WS-UPDI-WinAMD64 异常信息: Ca ...
- 删除Autorun.inf的方法
你的电脑的每个分区根目录都有一个autorun.inf的文件夹,查看属性是只读+隐藏,且无法删除.无法取得权限!点进去,却显示的是控制面板的内容? 其实这个不是病毒,而是用来防病毒,一些系统封装工具本 ...
- U盘中的autorun.inf
怎么删除u盘里的autorun.inf 如果U盘中毒,刚插进机子时按住SHIFT五秒,这样就可以跳过预读,这样防止了预读时把病毒感染到机子上,在U盘盘符上点右键,看看有没有“Auto”选项: 1.如果 ...
- 反病毒攻防研究第004篇:利用WinRAR与AutoRun.inf实现自启动
一.前言 由之前的一系列研究可以发现,为了使得"病毒"能够实现自启动,我也是煞费苦心,采取了各种方式,往往需要编写冗长的代码并且还需要掌握系统底层或注册表的很多知识才可以.而这次我 ...
- Linux(五)__硬盘分区
Linux中的文件管理机制是一种叫挂载和卸载的方式使用分区中的文件. 1.硬盘分区的概念 概述:首先我们要对硬盘分区的基本概念进行一些初步的了解,硬盘的分区主要分为基本分区(Primary Parti ...
- linux系统监控与硬盘分区/格式化/文件系统管理
1.系统监控 1) 系统监视和进程控制的工具----> Top 与 free 类似于windows的资源管理器. 进程运行的三种状态: tips: 进程(Process)是计 ...
- Visual Subst - 简单将任意文件夹挂载模拟成驱动器盘符硬盘分区的小工具
随着电脑的使用,硬盘里的资料一天比一天多,也越来越杂乱.一些朋友为了方便文件管理,会考虑重新分区,让C.D.E等盘符分别担任不同的角色.不过,不分区的话也有一些小工具可以帮你实现. Visual Su ...
- Linux速通07 硬盘分区、格式化及文件系统管理
硬件设备与文件名的对应关系 # 在Linux系统中,每个设备都被当作一个文件来对待 # 各种设备在Linux中的文件名 设备 设备在Linux内的文件名 IDE硬盘 /dev/hd[a-d] SCSI ...
随机推荐
- Sql:多行合并一行以及多条数据取时间最早的那条
有两个导数据的需求,1.一张表里面每一个订单号可能对应多条数据,每个单号返回时间最早的那条. 2.根据条件查询某个字段并按照逗号,合并在一起. 表类似结构如下: 第一条sql:select c.Id, ...
- <jsp:include page="" />路径
填写绝对路径:page="/WEB-INF/folder1/folder2/.../fileName.jsp"
- iOS_开发中引导页的设置及代码
在iOS 手机App 软件的开发中, 基本上每一个完整的App 都有与之相对应的引导页的设置,引导页也会有很多种设置的方式,根据不同的情况,选择不同的编码,在这里,我分享一下自己关于引导页的一些看法和 ...
- Shell练习
1 在终端下运行程序,首先清屏,然后提示:“Input a file or directory name, please!”.从键盘输入一个字符串(如:xxx),如果该字符串是目录,则显示:“xx ...
- 在centos环境安装mysql
在Linux上安装mysql数据库,我们可以去其官网上下载mysql数据库的rpm包,http://dev.mysql.com/downloads/mysql/5.6.html#downloads,大 ...
- Windows平台下Git服务器搭建
第一步:下载Java,下载地址:http://www.java.com/zh_CN/ 第二步:安装Java.安装步骤不再详述. 第三步:配置Java环境变量. 右键”计算机” => ”属性” = ...
- 2013年最棒的4个PHP框架
PHP 框架可以帮你编写简洁可重用的代码,遵循 MVC 模式,确保应用逻辑和展现分离.有很多很多的框架各有千秋,有的性能好,有的文档全,还有的提供大量的内建功能等等. 这里我们罗列的 2013 年最好 ...
- 基于JSON的级联列表实现
html代码: <select id="provice" onChange="setCity()"> <option value=" ...
- C# lambda表达式(简单易懂)
前言 1.天真热,程序员活着不易,星期天,也要顶着火辣辣的太阳,总结这些东西. 2.夸夸lambda吧:简化了匿名委托的使用,让你让代码更加简洁,优雅.据说它是微软自c#1.0后新增的最重要的功能之一 ...
- 开始JavaScript
将脚本放在那里? 将本可以放在HTML页面上的两个位置:<head>和</head>标签之间(称为头脚本,header script),或者<body>和</ ...