改变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):改变硬盘分区图标的更多相关文章

  1. 关于Autorun.inf文件

    配置Autorun.inf文件可以使双击磁盘时,自动运行某一应用程序.但是现在只支持CD或者DVD媒体了(以前硬盘也可以) 关于Autorun.inf的组成部分可以参考https://msdn.mic ...

  2. 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 ...

  3. 删除Autorun.inf的方法

    你的电脑的每个分区根目录都有一个autorun.inf的文件夹,查看属性是只读+隐藏,且无法删除.无法取得权限!点进去,却显示的是控制面板的内容? 其实这个不是病毒,而是用来防病毒,一些系统封装工具本 ...

  4. U盘中的autorun.inf

    怎么删除u盘里的autorun.inf 如果U盘中毒,刚插进机子时按住SHIFT五秒,这样就可以跳过预读,这样防止了预读时把病毒感染到机子上,在U盘盘符上点右键,看看有没有“Auto”选项: 1.如果 ...

  5. 反病毒攻防研究第004篇:利用WinRAR与AutoRun.inf实现自启动

    一.前言 由之前的一系列研究可以发现,为了使得"病毒"能够实现自启动,我也是煞费苦心,采取了各种方式,往往需要编写冗长的代码并且还需要掌握系统底层或注册表的很多知识才可以.而这次我 ...

  6. Linux(五)__硬盘分区

    Linux中的文件管理机制是一种叫挂载和卸载的方式使用分区中的文件. 1.硬盘分区的概念 概述:首先我们要对硬盘分区的基本概念进行一些初步的了解,硬盘的分区主要分为基本分区(Primary Parti ...

  7. linux系统监控与硬盘分区/格式化/文件系统管理

    1.系统监控 1) 系统监视和进程控制的工具----> Top 与  free      类似于windows的资源管理器.     进程运行的三种状态: tips: 进程(Process)是计 ...

  8. Visual Subst - 简单将任意文件夹挂载模拟成驱动器盘符硬盘分区的小工具

    随着电脑的使用,硬盘里的资料一天比一天多,也越来越杂乱.一些朋友为了方便文件管理,会考虑重新分区,让C.D.E等盘符分别担任不同的角色.不过,不分区的话也有一些小工具可以帮你实现. Visual Su ...

  9. Linux速通07 硬盘分区、格式化及文件系统管理

    硬件设备与文件名的对应关系 # 在Linux系统中,每个设备都被当作一个文件来对待 # 各种设备在Linux中的文件名 设备 设备在Linux内的文件名 IDE硬盘 /dev/hd[a-d] SCSI ...

随机推荐

  1. sass中中文注释报错

    最近项目中用到了sass来编译css,但是scss代码中写了中文注释后编译报错, 经过查找文档和资料,终于找到了解决办法,即在scss文件顶部加上@charset "utf-8"; ...

  2. 16061701(地图灯光编译Beast报错)

    [目标] 地图灯光编译报错 [思路] 1 我自己测c2_cwd_rt 附件为当时log 2 ExampleGame\BeastCache\PersistentCache 3 重新删除掉BeastCac ...

  3. php 图片验证码生成 前后台验证

    自己从前一段时间做了个php小项目,关于生成图片验证码生成和后台的验证,把自己用到的东西总结一下,希望大家在用到相关问题的时候可以有一定的参考性. 首先,php验证码生成. 代码如下: 1.生成图像代 ...

  4. Visual Studio 2015 新建MVC项目 Package Manager Console不能使用 (HRESULT: 0x80131500)

    Visual studio 2015 突然新建不了MVC项目,报出错误: HRESULT: 0x80131500 在折腾了很长时间,最后在Github上看到这样一个贴 地址:https://githu ...

  5. hdoj 1385Minimum Transport Cost

    卧槽....最近刷的cf上有最短路,本来想拿这题复习一下.... 题意就是在输出最短路的情况下,经过每个节点会增加税收,另外要字典序输出,注意a到b和b到a的权值不同 然后就是处理字典序的问题,当松弛 ...

  6. μC/OS-Ⅲ系统的源代码文件组织结构

  7. 使用ajaxfileupload.js实现文件上传

    ajaxFileUpload是一个异步上传文件的jQuery插件 语法:$.ajaxFileUpload([options]) options参数说明: 1.url  上传处理程序地址. 2,file ...

  8. css 背景透明文字(内容)不透明三种实现方法

    好久没写博客了.以前还想着最少一个月抽空写几篇.结果没做到O(∩_∩)O~~.好吧.现在努力,继续坚持. 看着以前写的东西,感觉自己在逐渐成长. 先上图: 本文主要记录如上图一样的.文字或内容不透明, ...

  9. sh back mongo

    !/bin/shBACK_DB=ALLOUT_DIR=/home/jianyeruan/app/mongo #临时备份目录TAR_DIR=/home/jianyeruan/app/mongotar # ...

  10. OC NSString 基本操作(用到补充持续更新)

    1.将字符串拆分成数组 NSString *string = @"1,2,3,4"; NSArray *array = [string componentsSeparatedByS ...