博文

几个批处理例子(2007-04-23 15:18:00)

摘要:例一、再给出一个已经过时的例子(a.bat):

@echo off
if exist C:\Progra~1\Tencent\AD\*.gif del C:\Progra~1\Tencent\AD\*.gif
a.bat

为什么说这是个过时的例子呢?很简单,因为现在已经几乎没有人用带广告的QQ了(KAO,我的QQ还显示好友三围呢!!),所以它几乎用不上了。但曾经它的作用是不可小窥的:删除QQ的广告,让对话框干干净净。这里用的地址是QQ的默认安装地址,默认批处理文件名为a.bat,你当然可以根据情况自行修改。在这个脚本中使用了if命令,使得它可以达到适时判断和删除广告图片的效果,你只需要不关闭命令执行后的DOS窗口,不按CTRL+C强行终止命令,它就一直监视是否有广告图片(QQ也再不断查看自己的广告是否被删除)。当然这个脚本占用你一点点内存,呵呵。


例二,使用批处理脚本查是否中冰河。脚本内容如下:

@echo off
netstat -a -n > a.txt
type a.txt | find "7626" && echo "Congratulations! You have infected GLACIER!"
del a.txt
pause & exit

这里利用了netstat命令,检查所有的网络端口状态,只需要你清楚常见木马所使用的端口,就能很easy的判断出来是否被人种了冰河。然这不是确定的,因为冰河默认的端口7626,完全可以被人修改。这里介绍的只是方法和思路。这里介绍的是方法和思路稍做改动,就变成可以检查其他木马的脚本了,再改动一下,加进去参数和端口及信息列表文件后,就变成自动检测所有木马的脚本了。呵呵,是不是很过瘾?脚本中还利用了组合命令&&和管道命令|,后面将详细介绍。

例三、借批处理自动清除系统垃圾,脚本如下:

@echo off
if exist c:\windows\temp\*.* del c:\windows\temp\*.*
if exist c:\windows\Tempor~1\*.* del c:\windows\Tempor~1......

阅读全文(4308) | 评论:1

管道命令和组合命令(2007-04-23 15:14:00)

摘要:1.  管道命令  |、>、>> 1.1   |、的作用就是把前一命令的输出当后一命令的输入来用的。 1.2   >、>>、这两个命令的效果从本质上来说都是一样的,他们都是输出重定向命令,说的通俗一点,就是把前面命令的输出写入到一个文件中。这两个命令的唯一区别是,>会清除掉原有文件中的内容后把新的内容写入原文件,而>>只会另起一行追加新的内容到原文件中,而不会改动其中的原有内容。 2.  组合命令 &、&&、|| 2.1  &、这可以说是最简单的一个组合命令了,它的作用是用来连接n个DOS命令,并把这些命令按顺序执行,而不管是否有命令执行失败。 2.2  &&、这里介绍的几个命令都是组合命令,所以他们前后都必须都有其他命令(要不如何组合?)。这个命令也不例外,它可以把它前后两个命令组合起来当一个命令来用,与&命令不同之处在于,它在从前往后依次执行被它连接的几个命令时会自动判断是否有某个命令执行出错,一旦发现出错后将不继续执行后面剩下的命令。 2.3  ||、这个命令的用法和&&几乎一样,但作用刚好和它相反:利用这种方法在执行多条命令时,当遇到一个执行正确的命令就退出此命令组合,不再继续执行下面的命令。......

阅读全文(2462) | 评论:0

Microsoft Visual C++ 6.0 各类工程配置说明(三)(2007-04-23 14:36:00)

摘要:  小结:
1.MFC的使用方式对默认情况选择的Run-time library的影响(以Debug版本为例):
Not Using MFC //MLd:Debug Single-Threaded(静态连接LIBCD.LIB库)
Use MFC in a Shared DLL //MDd: Debug Multithreaded DLL(动态连接MSVCRTD.DLL库)
Use MFC in a Static DLL //MTd:Debug Multithreaded(静态连接LIBCMTD.LIB库)
2.如果不使用MFC,在Link一栏一般会连接一系列Windows API的库文件;如果使用MFC,这些连接库就会“消失”。
3.Debug版本一般会有_DEBUG的预定义,而Release版本则定义NDEBUG。
4.使用Shared MFC和Static MFC相比,前者一般多一个_AFXDLL的定义。默认使用的Run-time Library也不一样,前者为/MDd,后者为/MTd。
5.MFC的普通DLL项目比MFC的EXE项目,一般多_WINDLL和_USRDLL预定义;连接参数多一个/dll定义。而MFC扩展DLL项目与MFC普通DLL项目相比,预定义将_USRDLL换成了_AFXEXT。
6.不使用MFC的Win32 DLL与MFC DLL相比,预定义少了_WINDLL和_AFXDLL,而仅保留了_USRDLL。
7.不使用MFC的静态库有_LIB的预定义。
8.#include <afxwin.h> 和#include <windows.h>不能重复包含,前者用于MFC程序,后者用于程序。
9.为了去掉Windows头文件中很少用到的定义,一般在stdafx.h中,Win32程序会定义#define WIN32_LEAN_AND_MEAN,而MFC程序会定义#define VC_EXTRALEAN。
10.作为本文的应用,改变项目参数设置,实现不同类型项目之间的项目转换,如下:
MFC Exe     <======> MFC DLL   ......

阅读全文(2624) | 评论:0

Microsoft Visual C++ 6.0 各类工程配置说明(二)(2007-04-23 14:35:00)

摘要:  (4.2) Use MFC in a Shared DLL
预定义:与(4.1)相比,增加了_WINDLL,_AFXDLL的定义
编译参数:没有太大区别。
连接参数:/nologo /dll /incremental:yes /pdb:"Debug/Win32DllDemo.pdb" /debug/machine:I386/out:"Debug/Win32DllDemo.dll" /implib:"Debug/Win32DllDemo.lib" /pdbtype:sept
可以看出,(4.1) 里连接的很多库消失了,这时,项目4变成了类似于项目2中的设置。编程时需要注意,项目4的stdafx.h仅包含了<windows.h>,此时如果要用MFC的类,需要自己加入MFC的几个头文件(<afxwin.h>、<afxext.h>等),并且将#include <windows.h>和DllMain入口函数注释掉!
(4.3) Use MFC in a Static DLL
使用MFC DLL的方式Shared和Static之间的区别与上述项目类似,不再做比较。
5.Win32 Static Library项目
预编译头文件stdafx.h(可能没有这个文件):
不使用MFC,仅仅#define WIN32_LEAN_AND_MEAN,而如果使用MFC,内容如下:
#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
#include <afx.h>  #include <afxwin.h>
(5.1) Not Using MFC    
预定义:WIN32,_DEBUG,_MBCS,_LIB,新出现了符号_LIB
编译参数:/nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /Fp"Debug/W32StaPrehead.pch" /Yu"s......

阅读全文(3873) | 评论:0

Microsoft Visual C++ 6.0 各类工程配置说明(一)(2007-04-23 14:34:00)

摘要:  1.   基于对话框(/单文档/多文档)的MFC程序 #include <afxdtctl.h>     // MFC support for Internet Explorer 4 Common #include <afxwin.h>      // MFC core and standard components #include <afxext.h>      // MFC extensions #include <afxdisp.h>     // MFC Automation classes #define VC_EXTRALEAN     // Exclude rarely-used stuff from Windows headers stdafx.h预编译头文件 afxext.h声明MFC一些扩展类(CBitmapButton、CControlBar、CSplitterWnd等) afxdisp.h中声明了Ole的几个类(COleException、COleVariant等) afxwin.h声明MFC封装的一些很基本的类(CWnd、CView、CButton、CDC等)afxdtctl.h声明几个控件类(CImageList、CMonthCalCtrl、CDateTimeCtrl等)Controls afxcmn.h声明MFC一些控件(CListCtrl、CProgressCtrl、CToolTipCtrl等) #include <afxcmn.h>     // MFC support for Windows Common Controls #ifndef _AFX_NO_AFXCMN_SUPPORT
#endif // _AFX_NO_AFXCMN_SUPPORT (1.1)Use MFC in a Shared DLL
De......

阅读全文(6312) | 评论:0

bat延迟运行(2007-04-23 13:54:00)

摘要:     引用 如果你运行的程序是可以自动返回cmd界面的 那么可以这样



@echo off

:aaa

pause 这里是你需要运行的程序

for /l %%i in (0,1,10000) do echo %%i>nul

goto aaa

当然bat延迟运行还有其他的一些方法 不过我这个算很简单了 你还可以使用两个for代替goto

for /l %%i in (0,1,10000) do echo %%i>nul 这里>nul忽略输出

如果程序是无法自动回到cmd界面的那可能需要结束她的进程什么的 自然利用bat调用其他程序也能做到例如ntsd debug 等等 或者是vbs 不过那就显不出bat的特性出来了
ping延时还是很精确的,呵呵。

@echo off
:aaa
echo %TIME%
ping 0.0.0.1 -n 1 -w 500>nul
goto aaa

I:\>delay
18:51:41.50
18:51:42.42
18:51:43.42
18:51:44.42
18:51:45.42
18:51:46.42
18:51:47.42
18:51:48.42
18:51:49.42
18:51:50.42
18:51:51.42
18:51:52.42
18:51:53.42
18:51:54.42
18:51:55.42
18:51:56.42
^C终止批处理操作吗(Y/N)? y Windows的ping.exe代码中调用了Sleep(1000),自然是很准确的。
ping的IP最好用127.0.0.1,因为用其他地址,第一次DNS解析会耗费一些时间,就不准确了。 收东西要收藏。我帮楼的各位大侠整理一下:
@echo off
@echo %time%
@set /a netu0=%1+1
@ping 127.0.......

阅读全文(6352) | 评论:1

重定向命令在安全方面的攻防应用(2007-04-23 13:51:00)

摘要:===================;
以下转载自 www.bluedon.com
===================;

重定向命令在安全方面的攻防应用
【2005-7-21 10:08:00】


  大家知道,DOS下有一个不为大家所常用的命令——重定向命令,这个小东西非常有用,该命令同样可以用于Win9x/ME/2000/XP下,灵活的使用这个命令可以给我们带来很大的方便——无论是入侵还是防守抑或是系统应用,都会带来很大的便利。今天就让我们来看几个重定向命令在安全方面的应用实例。

  一、命令格式

  DOS的标准输入输出通常是在标准设备键盘和显示器上进行的,利用重定向,可以方便地将输入输出改向磁盘文件或其它设备。其中:

  1.大于号“>”将命令发送到文件或设备,例如打印机>prn。使用大于号“>”时,有些命令输出(例如错误消息)不能重定向。

  2.双大于号“>>”将命令输出添加到文件结尾而不删除文件中已有的信息。

  3.小于号“<”从文件而不是键盘上获取命令所需的输入。

  4.>&符号将输出从一个默认I/O流(stdout,stdin,stderr)重新定向到另一个默认I/O流。例如,command >output_file 2>&1将处理command过程中的所有错误信息从屏幕重定向到标准文件输出中。标准输出的数值如下所示:

  标准输出 等价的数值

  Stdin 0

  Stdout 1

  Stderr 2

  其中,1和2都创建一个文件用于存放数据;4可能不能够在DOS下使用。

  二、重定向命令的输出

  几乎所有的命令均将输出发送到屏幕。即使是将输出发送到驱动器或打印机的命令,也会在屏幕上显示消息和提示。要将输出从屏幕重定向到文件或打印机,请使用大于号(>)。大多数命令中均可以使用大于号。例如,在以下命令中,dir命令生成的目录列表重定向到Dirlist.txt文件:dir>dirlist.tx......

阅读全文(1951) | 评论:0

怎样设置端口不被病毒攻击(2006-06-18 23:38:00)

摘要:怎样设置端口不被病毒攻击 默认情况下,Windows有很多端口是开放的,在你上网的时候,网络病毒和黑客可以通过这些端口连上你的电脑。为了让你的系统变为铜墙铁壁,应该封闭这些端口,主要有:TCP 135、139、445、593、1025 端口和 UDP 135、137、138、445 端口,一些流行病毒的后门端口(如 TCP 2745、3127、6129 端口),以及远程服务访问端口3389。下面介绍如何在WinXP/2000/2003下关闭这些网络端口: 第一步,点击“ 开始” 菜单/设置/控制面板/管理工具,双击打开“ 本地安全策略” ,选中“ IP 安全策略,在本地计算机” ,在右边窗格的空白位置右击鼠标,弹出快捷菜单,选择“ 创建 IP 安全策略” (如右图),于是弹出一个向导。在向导中点击“ 下一步” 按钮,为新的安全策略命名;再按“ 下一步” ,则显示“ 安全通信请求” 画面,在画面上把“ 激活默认相应规则” 左边的钩去掉,点击“ 完成” 按钮就创建了一个新的IP 安全策略。 第二步,右击该IP安全策略,在“ 属性” 对话框中,把“ 使用添加向导” 左边的钩去掉,然后单击“ 添加” 按钮添加新的规则,随后弹出“ 新规则属性” 对话框,在画面上点击“ 添加” 按钮,弹出IP筛选器列表窗口;在列表中,首先把“ 使用添加向导” 左边的钩去掉,然后再点击右边的“ 添加” 按钮添加新的筛选器。 第三步,进入“ 筛选器属性” 对话框,首先看到的是寻址,源地址选“ 任何 IP 地址” ,目标地址选“ 我的 IP 地址” ;点击“ 协议” 选项卡,在“ 选择协议类型” 的下拉列表中选择“ TCP” ,然后在“ 到此端口” 下的文本框中输入“ 135” ,点击“ 确定” 按钮(如左图),这样就添加了一个屏蔽 TCP 135(RPC)端口的筛选器,它可以防止外界通过135端口连上你的电脑。 点击“ 确定” 后回到筛选器列表的对话框,可以看到已经添加了一条策略,重复以上步骤继续添加 TCP 137、139、445、593 端口和 UDP 135、139、445 端口,为它们建立相应的筛选器。 重复以上步骤添加TCP 1025、2745、3127、6129、3389 端口的屏蔽策略,建立好上述端口的筛选器,最后点击“ 确定” 按钮。 第四步,在“ 新规则......

阅读全文(2126) | 评论:0

c语言--绘制正余弦曲线(2006-06-14 18:26:00)

摘要:问题分析: 在0~360度的区间内,一行中要显示两个点,而对一般的显示器来说,只能按行输出,即:输出第一行信息后,只能向下一行输出,不能再返回到上一行。为了获得题目要求的图形就必须在一行中一次输出两个“*”。   思路:   利用sin (x)和cos(x)的左右对称性; 利用反余弦函数asin和acos计算坐标(x,y)的对应关系。   程序如下: #include"stdio.h" #include"math.h" void main()
{
double y;
int x,m;
/*先打印0到180度,利用sin (x)在0到90度的左右对称性,
序中利用反正弦函数asin计算坐标(x,y)的对应关系。*/
for(y=1;y>=0;y-=0.1) /*y为列方向,值从1到0,步长为0.1*/
{
m=asin(y)*10; /*计算出y对应的弧度m,乘以10为图形放大倍数*/
for(x=1;x<m;x++) printf(" ");
printf("*"); /*控制打印左侧的 * 号*/
for(;x<31-m;x++)printf(" ");
printf("*\n"); /*控制打印同一行中对称的右侧*号*/
}
/*再打印180到360度,利用cos (x)在90到270度的左右对称性,
序中利用反余弦函数acos计算坐标(x,y)的对应关系,
记得把横坐标x的值右移90度。*/
for(y=0;y>=-1;y-=0.1) /*y为列方向,值从0到-1,步长为0.1*/
{
m=acos(y)*10+15; /*计算出y对应的弧度m,乘以10为图形放大倍数,
                  x的值右移90度*/
for(x=1;x<m;x++)printf(" ");
printf("*"); /*控制打印左侧的 * 号*/
for(;x<92-m;x++......

阅读全文(3524) | 评论:0

最后的宣战 --《新闻调查》专访黎家明(2006-05-22 09:19:00)

摘要:   最后的宣战 最后的宣战 (58) 【 字体:大 中 小 】 【 打印 】【 加入收藏夹 】 新浪网发布央视《新闻调查》专访黎家明     


  【内容提示】  

  虽然卫生部统计我国的艾滋病感染人数已经接近一百万,但这个人群的生存状况对于公众来说,一直是鲜为人知。2001年7月,在互联网上突然出现了一位匿名的艾滋病感染者时断时续地向网友讲述着他的痛悔、他的悲伤、他的抗争。  

  今天的《新闻调查》将带您走近这位被称为“中国最神秘的艾滋病感染者”的黎家明。  

  【主要内容】  

  解说:2001年7月,发表在互联网上的一份长篇连载一时间成为各方面关注的焦点。这是一份题为《最后的宣战》的艾滋病病人的手记,首发在一个叫“榕树下”的文学网站上。网名为黎家明的作者称,手记是他自己罹患艾滋病的真实纪录。但黎家明多次拒绝和媒体见面,并隐瞒了真实身份。这令他和手记都显得十分神秘,更由此引发种种争议:有人就黎家明的感染方式展开道德的讨论,有人怀疑黎家明是否真的存在,还有人则指责这纯粹是网站的商业炒作。2002年5月,已经发表32篇,14万多字,累计点击率达400多万次的手记公开出版。两个月后,黎家明同意接受《新闻调查》的采访。采访前,《新闻调查》在北京市性病防治所以及北京市疾病控制中心对黎家明的血样进行了HIV抗体初筛和确证检测,证实黎家明感染艾滋病。此外,节目尊重黎家明的要求,对他的图象和声音进行了技术处理。  

  一、“一脚跨进鬼门关”  

  记者:大概在一年以前,也就是在这个时候,我给你打过电话。因为我从网上看到了你写的文章,我想一个人他在面临着命运这么大的转变的时候能写下这么冷静的文字,我很想采访你,但是当时你拒绝了我的采访。为什么事隔一年之后,你又愿意坐在我的面前呢?  

  黎家明:我从来没有面临过这样的事情。我特别害怕,就觉得我宁愿不做这件事情,宁愿不跟任何媒......

阅读全文(3856) | 评论:0