标题: 磁盘背景更换程序(自己编的)
[打印本页]
作者: bw070
时间: 2007-5-14 21:16
标题: 磁盘背景更换程序(自己编的)
自己编了个可以更改磁盘背景的批处理,编好了转成EXE发出来
在论坛待了也段日子了 学了不少东西 本人向各位老师说声谢谢!
程序代码大部分由本人独立编写
有一部分代码由 中国DOS联盟论坛 的 lxmxn 编写
在此向 lxmxn 表示感谢
使用方法:
下载解压后运行Disk Background Changer.EXE即可
请保证更换图片与本程序在同一目录下
详细使用方法请访问:
http://www.adminhy.xinwen365.net/computer/diskbackgrdchanger.htm
程序效果图
点此下载 Disk Background Changer
效果图
作者: fengzi
时间: 2007-5-15 01:42
呵呵``高手挖`
作者: ttyp
时间: 2007-5-15 09:43
干嘛转成EXE?
作者: wudixin96
时间: 2007-5-15 09:54
类似的帖子已经有了。
http://www.cn-dos.net/forum/viewthread.php?tid=25517
[
Last edited by wudixin96 on 2007-5-15 at 09:58 AM ]
作者: tttest
时间: 2007-5-15 10:40
放源码出来。。
作者: zhoushijay
时间: 2007-5-15 11:06
用desktop的吧,这个文件还可以修改文件夹图标,用autorun可以修改磁盘的图标
作者: bw070
时间: 2007-5-15 11:54
.
[
Last edited by bw070 on 2007-5-15 at 11:46 PM ]
作者: bw070
时间: 2007-5-15 12:02
写成EXE因为不喜欢BAT那个单调的图表 转成EXE可以自己改图标
楼上给出别人编的我没有看过 不过我的代码也可以证实 我编的比他的差多了....呵呵
我的支持在BAT所在目录放入多张图片 而且可以选择其中的任意图片为你的任意磁盘设定背景 也许这点比那位兄弟编的在功能上好一些吧
呵呵
这样的图表不是好看一点么?
[
Last edited by bw070 on 2007-5-15 at 12:12 PM ]
作者: ttyp
时间: 2007-5-15 13:30
图标是好看,但是别人不敢用啊,除非你只想自己用,有源码的放心多了,还能学到东西
作者: gne3
时间: 2007-5-15 13:35
路过
Gne┼───
作者: bw070
时间: 2007-5-15 14:09
Quote: |
Originally posted by ttyp at 2007-5-15 01:30 PM:
图标是好看,但是别人不敢用啊,除非你只想自己用,有源码的放心多了,还能学到东西 |
|
哈哈 那你现在还敢用不 呵呵
作者: yefenghome
时间: 2007-5-22 13:43
Quote: |
Originally posted by zhoushijay at 2007-5-15 11:06:
用desktop的吧,这个文件还可以修改文件夹图标,用autorun可以修改磁盘的图标 |
|
我也是这么觉得的,也许只有这一种办法
作者: zglxw
时间: 2007-5-23 18:26
支持
作者: 546474
时间: 2007-5-25 19:30
其实就是改系统文件的。
作者: longhgc
时间: 2007-7-9 15:12
支持下..
作者: qinbuer
时间: 2007-7-9 20:34
实在不欣赏楼主的行为,我想这个论坛的宗旨无非就是:资源共享,虽然阁下的程序
我想泡过论坛两三星期的人都能猜得出来,但既然楼主有了作品,就应该把源代码帖
出来,一方面让走的远的兄弟指导,另一方面也让起步晚的兄弟学习学习,阁下的做
法难道是学了东西就向我们炫耀来了?
作者: wang6610
时间: 2007-7-9 21:17
@Echo Off
title 磁盘背景更换程序 By:Dark Blue WebSite:adminhy.xinwen365.net
If Exist c:\readme.txt Goto :overreadme
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 请详细阅读本说明: ☆
Echo ☆ (注意:本说明只出现一次!) ★
Echo ★ 您现在使用的是"磁盘背景更换程序",由Dark Blue编写,QQ:93691582 ☆
Echo ☆ 请将需要更换的图片与本程序放在同一目录下,图片数量不限制,但请 ★
Echo ★ 尽量保持在20以下,且仅支持JPG格式,若图片为其他格式请自行转换, ☆
Echo ☆ 本程序不提供转换功能。本程序流程比较清晰,如果还有有什么不清楚 ★
Echo ★ 请直接运行本程序,相信只需要一次您就可以轻松掌握。需要注意的是 ☆
Echo ☆ 程序只能更改磁盘根目录背景,且每次修改后素材图片消失。建议图片 ★
Echo ★ 名与修改磁盘盘符相对应如1.jpg 2.jpg 3.jpg 分别对应 C盘 D盘 E盘 ☆
Echo ☆ 这样在修改时不至于把自己弄混了。本程序请不要放在磁盘根目录下执 ★
Echo ★ 行,可能产生未知的BUG。 ☆
Echo ☆ 个人小站
http://adminhy.xinwen365.net 欢迎您的到来。 ★
Echo ★ ☆
Echo ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
Echo.
Echo.
Echo.
Set /p right=请勿修改或者反编译本程序:(Y=同意;N=不同意)
If /i %right% equ y (Echo 版权归Dark Blue所有>c:\readme.txt&attrib c:\readme.txt +s +h&Goto :readme_y)
Goto :End
:readme_y
Echo.
Echo.
Echo.
:overreadme
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 正在检测您的电脑...请稍等! ☆
Echo ☆ ★
Echo ☆★☆★☆★☆★☆★☆★☆★☆★☆★
Echo %time% && ping 127.1 -n 4 >nul && Echo %time%
cls
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ★ ☆
Echo ★ 数据如下: 盘符 存在与否 (仅列出存在磁盘!) ☆
If Not Exist c:\ Goto :c
Echo ★ C 存 在 ☆
:c
If Not Exist D:\ Goto :D
Echo ★ D 存 在 ☆
:D
If Not Exist E:\ Goto :E
Echo ★ E 存 在 ☆
:E
If Not Exist F:\ Goto :F
Echo ★ F 存 在 ☆
:F
If Not Exist G:\ Goto :G
Echo ★ G 存 在 ☆
:G
If Not Exist H:\ Goto :H
Echo ★ H 存 在 ☆
:H
If Not Exist I:\ Goto :I
Echo ★ I 存 在 ☆
:I
If Not Exist J:\ Goto :J
Echo ★ J 存 在 ☆
:J
If Not Exist K:\ Goto :K
Echo ★ K 存 在 ☆
:K
If Not Exist L:\ Goto :L
Echo ★ L 存 在 ☆
:L
If Not Exist M:\ Goto :M
Echo ★ M 存 在 ☆
:M
If Not Exist N:\ Goto :N
Echo ★ N 存 在 ☆
:N
If Not Exist O:\ Goto :O
Echo ★ O 存 在 ☆
:O
If Not Exist P:\ Goto :P
Echo ★ P 存 在 ☆
:P
If Not Exist Z:\ Goto :Z
Echo ★ Z 存 在 ☆
:Z
If Not Exist Y:\ Goto :Y
Echo ★ Y 存 在 ☆
:Y
If Not Exist X:\ Goto :X
Echo ★ X 存 在 ☆
:X
If Not Exist U:\ Goto :U
Echo ★ U 存 在 ☆
:U
If Not Exist V:\ Goto :V
Echo ★ V 存 在 ☆
:V
If Not Exist W:\ Goto :W
Echo ★ W 存 在 ☆
:W
Echo ★ ☆
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
:reinput
Echo.
Echo.
Echo 例如:C盘即输入"C"(注意:不需要输入引号!)
Echo.
Echo 您当前的位置是:%disk%盘
Echo.
Set /p disk=请您输入您需要更改磁盘的盘符:
Echo [ExtShellFolderViews] >%disk%:\desktop.ini
Echo {BE098140-A513-11D0-A3A4-00C04FD706EC}= >>%disk%:\desktop.ini
Echo {BE098140-A513-11D0-A3A4-00C04FD706EC} >>%disk%:\desktop.ini
Echo [{BE098140-A513-11D0-A3A4-00C04FD706EC}] >>%disk%:\desktop.ini
Echo Attributes=1 >>%disk%:\desktop.ini
Echo IconArea_Image=backpic.jpg >>%disk%:\desktop.ini
Echo [.ShellClassInfo] >>%disk%:\desktop.ini
Echo ConfirmFileOp=0 >>%disk%:\desktop.ini
attrib %disk%:\desktop.ini +s +h
cls
If Not Exist %disk%:\ (Echo 错误!您输入的磁盘不存在!5秒后重新输入...&Echo %time% && ping 127.1 -n 5 >nul && Echo %time%&cls&Goto :reinput)
If Exist %disk%:\backpic.jpg (Echo →状态:磁盘%disk%已经存在背景!&Echo.)
If Not Exist %disk%:\backpic.jpg (Echo →状态:磁盘%disk%尚未创建背景!请选①创建!&Echo.)
:cho
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 序列号 对应操作 ☆
Echo ☆ ★
Echo ★ ① 更换磁盘背景 ☆
Echo ☆ ② 取消磁盘背景 ★
Echo ★ ③ 重新选择分区 ☆
Echo ☆ ④ 退出本程序 ★
Echo ★ ⑤ 查看作者信息 ☆
Echo ☆ ★
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo.
Set /p moves=请输入您所希望的操作序列号:
If /i %moves% equ 1 (Goto :cho1)
If /i %moves% equ 2 (Goto :cho2)
If /i %moves% equ 3 (cls&Goto :reinput)
If /i %moves% equ 4 (cls&Goto :End)
If /i %moves% equ 5 (cls&Goto :info)
cls
Echo 输入错误!请重新输入
Echo.
Goto :cho
:cho1
If Exist *.jpg Goto :Exist
cls
Echo 未探测到JPG格式图片,请在当前目录置入图片!
Echo.
Goto :cho
:Exist
If Exist backpic.jpg Goto :end2
@attrib %disk%:\backpic.jpg -s -h
@Del %disk%:\backpic.jpg
cls
Echo 序列号 图片名 (请勿输入无效序列号!)
Setlocal EnableDelayedExpansion
Set a=1
For %%a In (*.jpg) Do (
Set jpgfile!a!="%%a"
Echo !a! %%a
Set/a a+=1
)
Set/p choose=请选择图片序列号(选中图片将设为%disk%盘的背景):
Ren !jpgfile%choose%! 4backpic.jpg
If Exist %disk%:\backpic.jpg Goto :endcho1
@Copy 4backpic.jpg %disk%:\backpic.jpg
Del 4backpic.jpg
:endcho1
attrib %disk%:\backpic.jpg +s +h
cls
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 磁盘%disk%背景设置完毕,稍后请右键刷新查看效果!
Echo ☆ 5秒后返回菜单... ★
Echo ★ ☆
Echo ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
Echo %time% && ping 127.1 -n 5 >nul && Echo %time%
cls
Goto :cho
:cho2
@attrib %disk%:\backpic.jpg -s -h
@Del %disk%:\backpic.jpg
cls
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 磁盘%disk%背景还原完毕,稍后请右键刷新查看效果!
Echo ☆ 5秒后返回菜单... ★
Echo ★ ☆
Echo ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
Echo %time% && ping 127.1 -n 5 >nul && Echo %time%
cls
Goto :cho
:end2
cls
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 对不起,设计者不允许程序执行在磁盘根目录下! ☆
Echo ☆ 10秒后自动关闭本程序...或者请您关闭本程序 ★
Echo ★ ☆
Echo ☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
Echo %time% && ping 127.1 -n 10 >nul && Echo %time%
Goto :End
:info
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ☆ ★
Echo ★ 作者网名:Dark Blue ☆
Echo ☆ 作者Q Q :93691582 ★
Echo ★ 个人网站:adminhy.xinwen365.net ☆
Echo ☆ ★
Echo ★ ☆
Echo ☆ 谢谢您的使用 如果有什么好的建议请E-Mail我 ★
Echo ★ E-Mail:huyang1986.student@sina.com ☆
Echo ☆ ★
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo.
Echo.
Echo.
pause
cls
Goto :cho
:End
作者: qinbuer
时间: 2007-7-9 22:37
再次路过,加分~ ^_^
作者: qinbuer
时间: 2007-7-9 23:37
似乎有几个漏洞:
1、在测试中弹出对话框如下---------------------------
cmd.exe - 没有软盘
---------------------------
驱动器中没有软盘。 请在驱动器 H: 中插入软盘。
---------------------------
取消 重试(T) 继续(C)
---------------------------
H: 为虚拟光驱
其实我觉得中间那一大段似乎太过于臃肿了,倒不如:
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
Echo ★ ☆
Echo ★ 数据如下: 盘符 存在与否 (仅列出存在磁盘!) ☆
for /f "skip=1" %%i in ('wmic logicaldisk where "drivetype=3" get caption') do (
echo ★ %%i 存在 ☆
)
Echo ★ ☆
Echo ★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
这样既简洁了代码,又消除了漏洞;
2、%disk%没有定义,无法显示当然位置的盘符,输出信息如下:
例如:C盘即输入"C"(注意:不需要输入引号!)
您当前的位置是:盘
请您输入您需要更改磁盘的盘符:
以上是一个菜鸟的愚见,请勿见怪:)
[
Last edited by qinbuer on 2007-7-9 at 11:46 PM ]