posts - 12,  comments - 5,  trackbacks - 0
  2006年12月5日
        已经好久没来了,最近找工作很失败,身心俱疲!

        不再有当初的激情,不再有当初的自信,看到别人一个一个拿到offer,我现在还在等待,而且都是不尽人意的公司,心里已经萌生了自卑。

posted @ 2006-12-05 09:10 小歪 阅读(137) | 评论 (0)编辑 收藏
  2006年10月17日

匆匆的十一长假过去了,迎来了一连串的琐碎又重要的事情,

要开始写毕业论文了,导师好像有意让我们3月份毕业,可是现在毕业论文还没开笔,有点心急了。

开始公务员报名了,既然要报名就要好好复习,准备考试,对我来说公务员考试很难啊!

开始找工作了,现在招聘的黄金时节已经来临,看到别人都结束实习,赶去招聘,有点心慌!

每天要上班,好像心不在焉,心里的挂念太多,不能专心工作,怕实习不能圆满成功!

 

posted @ 2006-10-17 10:37 小歪 阅读(130) | 评论 (0)编辑 收藏
  2006年9月30日
       在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下:
  一.将信息写入.INI文件中.
  1.所用的WINAPI函数原型为: 
BOOL WritePrivateProfileString(
LPCTSTR lpAppName,
LPCTSTR lpKeyName,
LPCTSTR lpString,
LPCTSTR lpFileName
); 
  其中各参数的意义:
   LPCTSTR lpAppName 是INI文件中的一个字段名.
   LPCTSTR lpKeyName 是lpAppName下的一个键名,通俗讲就是变量名.
   LPCTSTR lpString 是键值,也就是变量的值,不过必须为LPCTSTR型或CString型的.

LPCTSTR lpFileName 是完整的INI文件名.

2.具体使用方法:设现有一名学生,需把他的姓名和年龄写入 c:\stud\student.ini 文件中. 

CString strName,strTemp;
int nAge;
strName="张三";
nAge=12;
::WritePrivateProfileString("StudentInfo","Name",strName,"c:\\stud\\student.ini"); 

此时c:\stud\student.ini文件中的内容如下:
[StudentInfo]

   Name=张三
  3.要将学生的年龄保存下来,只需将整型的值变为字符型即可:
strTemp.Format("%d",nAge);
::WritePrivateProfileString("StudentInfo","Age",strTemp,"c:\\stud\\student.ini"); 

  二.将信息从INI文件中读入程序中的变量.
  1.所用的WINAPI函数原型为:
DWORD GetPrivateProfileString(
LPCTSTR lpAppName, 
LPCTSTR lpKeyName, 
LPCTSTR lpDefault, 
LPTSTR lpReturnedString, 
DWORD nSize, 
LPCTSTR lpFileName 
); 
  其中各参数的意义: 
   前二个参数与 WritePrivateProfileString中的意义一样.

   lpDefault : 如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量. 
   lpReturnedString : 接收INI文件中的值的CString对象,即目的缓存器.
   nSize : 目的缓存器的大小.
   lpFileName : 是完整的INI文件名.
  2.具体使用方法:现要将上一步中写入的学生的信息读入程序中.
CString strStudName;
int nStudAge; 
GetPrivateProfileString("StudentInfo","Name","默认姓名",strStudName.GetBuffer(MAX_PATH),MAX_PATH,"c:\\stud\\student.ini"); 
  执行后 strStudName 的值为:"张三",若前两个参数有误,其值为:"默认姓名".

  3.读入整型值要用另一个WINAPI函数: 
UINT GetPrivateProfileInt(
LPCTSTR lpAppName, 
LPCTSTR lpKeyName, 
INT nDefault, 
LPCTSTR lpFileName 
); 
  这里的参数意义与上相同.使用方法如下:

nStudAge=GetPrivateProfileInt("StudentInfo","Age",10,"c:\\stud\\student.ini"); 

  三.循环写入多个值,设现有一程序,要将最近使用的几个文件名保存下来,具体程序如下:
  1.写入:
CString strTemp,strTempA;
int i;
int nCount=6;
file://共有6个文件名需要保存

for(i=0;i {strTemp.Format("%d",i);
strTempA=文件名;
file://文件名可以从数组,列表框等处取得.
::WritePrivateProfileString("UseFileName","FileName"+strTemp,strTempA,"c:\\usefile\\usefile.ini");
}
strTemp.Format("%d",nCount);
::WritePrivateProfileString("FileCount","Count",strTemp,"c:\\usefile\\usefile.ini");
file://将文件总数写入,以便读出. 

  2.读出:
nCount=::GetPrivateProfileInt("FileCount","Count",0,"c:\\usefile\\usefile.ini");
for(i=0;i {strTemp.Format("%d",i);

strTemp="FileName"+strTemp;
::GetPrivateProfileString("CurrentIni",strTemp,"default.fil", strTempA.GetBuffer(MAX_PATH),MAX_PATH,"c:\\usefile\\usefile.ini");

file://使用strTempA中的内容.


  补充四点:

   1.INI文件的路径必须完整,文件名前面的各级目录必须存在,否则写入不成功,该函数返回 FALSE 值.

   2.文件名的路径中必须为 \\ ,因为在VC++中, \\ 才表示一个 \ .

   3.也可将INI文件放在程序所在目录,此时 lpFileName 参数为: ".\\student.ini".

   4.从网页中粘贴源代码时,最好先粘贴至记事本中,再往VC中粘贴,否则易造成编译错误,开始时我也十分不解,好好的代码怎么就不对呢?后来才找到这个方法.还有一些代码中使用了全角字符如:<,\等,也会造成编译错误.
posted @ 2006-09-30 09:14 小歪 阅读(4572) | 评论 (1)编辑 收藏
  2006年9月28日

void CCopyFileDlg::OnRegisterOcx(CString StrName)
{
    //ActiveX控件的路径及文件名 
    LPCTSTR pszOCXName = StrName; 
    //装载ActiveX控件 
    HINSTANCE hLib = LoadLibrary(pszOCXName); 
    if (hLib < (HINSTANCE)HINSTANCE_ERROR) 
    { 
        MessageBox("不能载入OCX文件!","结果",MB_OK); 
        return; 
    } 
    //获取注册函数DllRegisterServer地址 
    FARPROC lpOCXEntryPoint; 
    lpOCXEntryPoint = GetProcAddress(hLib,_T("DllRegisterServer")); //改成DllRegisterServer可以卸载
    //调用注册函数DllRegisterServer 
    if(lpOCXEntryPoint!=NULL) 
    { 
        if(FAILED((*lpOCXEntryPoint)())) 
        { 
            MessageBox("调用DllRegisterServer失败!","结果",MB_OK); 
            FreeLibrary(hLib); 
            return; 
        } 
        else
        {
               MessageBox("注册成功","结果",MB_OK); 
     }
   
 }
 else 
     MessageBox("调用DllRegisterServer失败!","结果",MB_OK);

}

posted @ 2006-09-28 16:45 小歪 阅读(1299) | 评论 (0)编辑 收藏
CRegKey reg;  
   
  if(reg.Open(HKEY_LOCAL_MACHINE,"System\\CurrentControlSet\\Control\\Session Manager\\Environment\\")==ERROR_SUCCESS)   //   路径自定  
  {  
        TCHAR     path[MAX_PATH];  
        DWORD     dw = MAX_PATH;
        if(ERROR_SUCCESS==reg.QueryValue(path,"path",&dw))  
        {   
               MessageBox(path,"找到Path了");   
               CString AltPath = path; 
               CString str;
               //长度
               str.Format("%d",AltPath.GetLength());
               MessageBox(str);
               //显示字符的位置
               str.Format("%d",AltPath.Find("需要的字符串;",1));
               MessageBox(str);
               //删除原来的字符串
               AltPath.Delete(AltPath.Find("字符串;",1),13);
               MessageBox(AltPath);
               //添加新路径
               AltPath.Insert(AltPath.GetLength(),"添加的新字符串;");
               reg.SetValue(HKEY_LOCAL_MACHINE,"System\\CurrentControlSet\\Control\\Session     Manager\\Environment\\path",AltPath,"");
               reg.SetValue(AltPath,"path");
               reg.QueryValue(path,"path",&dw);
               MessageBox(path);
               reg.Close();
           }  
 
  } 
  else
  {
  MessageBox("lalal");
     //注册表键值不存在  
  MessageBox("Path   Not   Found!");
  } 
posted @ 2006-09-28 08:51 小歪 阅读(1285) | 评论 (0)编辑 收藏
  2006年9月19日
        终于快到十一了!
        到了明天,我就实习整整两个月了。
        在开始的一段时间里,感觉很充实,每天都能学到新的知识,有时晚上做梦都不再是远在成都的男友,而是我要解决的问题,那种感觉就像我马上就成为高手了,特别的激动人心。
        可是现在,我在迷茫,不知道自己正在做的是不是有意义,现在真想放假,让自己好好的考虑一下,或者真是从学校到公司的热度降温造成的,应该调整心态,以后就要天天上班,保持好的心情才可以!
        坚持吧!
posted @ 2006-09-19 14:51 小歪 阅读(165) | 评论 (0)编辑 收藏
扩展名是bat(在nt/2000/xp/2003下也可以是cmd)的文件就是批处理文件。

首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。

其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。

第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。一个良好的习惯是在硬盘上建立一个bat或者batch目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。

第四,在DOS和Win9x/Me系统下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文件中,例如设置搜索路径,调入鼠标驱动和磁盘缓存,设置系统环境变量等。下面是一个运行于Windows 98下的autoexec.bat的示例:
@ECHO OFF
PATH C:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;C:\SYSTOOLS;C:\WINTOOLS;C:\BATCH
LH SMARTDRV.EXE /X
LH DOSKEY.COM /INSERT
LH CTMOUSE.EXE
SET TEMP=D:\TEMP
SET TMP=D:\TEMP

批处理的作用
简单的说,批处理的作用就是自动的连续执行多条命令。

这里先讲一个最简单的应用:在启动wps软件时,每次都必须执行(>前面内容表示DOS提示符):
C:\>cd wps
C:\WPS>spdos
C:\WPS>py
C:\WPS>wbx
C:\WPS>wps
如果每次用WPS之前都这样执行一遍,您是不是觉得很麻烦呢?

好了,用批处理,就可以实现将这些麻烦的操作简单化,首先我们编写一个runwps.bat批处理文件,内容如下:
@echo off
c:
cd\wps
spdos
py
wbx
wps
cd\

以后,我们每次进入wps,只需要运行runwps这个批处理文件即可。

常用命令

echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。
echo 表示显示此命令后的字符
echo off 表示在此语句后所有运行的命令都不显示命令行本身
@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。
pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。

例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS等功能。

  批处理文件的内容为:         命令注释:

    @echo off           不显示后续命令行及当前命令行
    dir c:\*.* >a.txt       将c盘文件列表写入a.txt
    call c:\ucdos\ucdos.bat    调用ucdos
    echo 你好            显示"你好"
    pause              暂停,等待按键继续
    rem 准备运行wps         注释:准备运行wps
    cd ucdos            进入ucdos目录
    wps               运行wps 

批处理文件的参数

批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:
@echo off
format %1

如果执行C:\>f a:
那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:

例3:C:根目录下一批处理文件名为t.bat,内容为:
@echo off
type %1
type %2

那么运行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容。

特殊命令

if goto choice for是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。

一、if 是条件语句,用来判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:

1、if [not] "参数" == "字符串" 待执行的命令

参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。

例:if "%1"=="a" format a:

2、if [not] exist [路径\]文件名 待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句。

如: if exist c:\config.sys type c:\config.sys
表示如果存在c:\config.sys文件,则显示它的内容。

3、if errorlevel <数字> 待执行的命令

很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。

如if errorlevel 2 goto x2

二、goto 批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配合使用,根据不同的条件来执行不同的命令组。

如:
goto end

:end
echo this is the end

标号用“:字符串”来定义,标号所在行不被执行。

三、choice 使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的errorlevel,然后于if errorlevel配合,根据用户的选择运行不同的命令。

注意:choice命令为DOS或者Windows系统提供的外部命令,不同版本的choice命令语法会稍有不同,请用choice /?查看用法。

choice的命令语法(该语法为Windows 2003中choice命令的语法,其它版本的choice的命令语法与此大同小异):

CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

描述:
该工具允许用户从选择列表选择一个项目并返回所选项目的索引。

参数列表:
/C choices 指定要创建的选项列表。默认列表是 "YN"。
/N 在提示符中隐藏选项列表。提示前面的消息得到显示,
选项依旧处于启用状态。
/CS 允许选择分大小写的选项。在默认情况下,这个工具
是不分大小写的。
/T timeout 做出默认选择之前,暂停的秒数。可接受的值是从 0
到 9999。如果指定了 0,就不会有暂停,默认选项
会得到选择。
/D choice 在 nnnn 秒之后指定默认选项。字符必须在用 /C 选
项指定的一组选择中; 同时,必须用 /T 指定 nnnn。
/M text 指定提示之前要显示的消息。如果没有指定,工具只
显示提示。
/? 显示帮助消息。

注意:
ERRORLEVEL 环境变量被设置为从选择集选择的键索引。列出的第一个选
择返回 1,第二个选择返回 2,等等。如果用户按的键不是有效的选择,
该工具会发出警告响声。如果该工具检测到错误状态,它会返回 255 的
ERRORLEVEL 值。如果用户按 Ctrl+Break 或 Ctrl+C 键,该工具会返回 0
的 ERRORLEVEL 值。在一个批程序中使用 ERRORLEVEL 参数时,将参数降
序排列。

示例:
CHOICE /?
CHOICE /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"
CHOICE /T 10 /C ync /CS /D y
CHOICE /C ab /M "选项 1 请选择 a,选项 2 请选择 b。"
CHOICE /C ab /N /M "选项 1 请选择 a,选项 2 请选择 b。"

如果我运行命令:CHOICE /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"
屏幕上会显示:
确认请按 Y,否请按 N,或者取消请按 C。 [Y,N,C]?

例:test.bat的内容如下(注意,用if errorlevel判断返回值时,要按返回值从高到低排列):
@echo off
choice /C dme /M "defrag,mem,end"
if errorlevel 3 goto end
if errorlevel 2 goto mem
if errotlevel 1 goto defrag

:defrag
c:\dos\defrag
goto end

:mem
mem
goto end

:end
echo good bye

此批处理运行后,将显示“defrag,mem,end[D,M,E]?” ,用户可选择d m e ,然后if语句根据用户的选择作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,批处理运行结束。

四、for 循环命令,只要条件符合,它将多次执行同一命令。

语法:
对一组文件中的每一个文件执行某个特定命令。

FOR %%variable IN (set) DO command [command-parameters]

%%variable 指定一个单一字母可替换的参数。
(set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters 为特定命令指定参数或命令行开关。

例如一个批处理文件中有一行:
for %%c in (*.bat *.txt) do type %%c

则该命令行会显示当前目录下所有以bat和txt为扩展名的文件的内容。

批处理示例

1. IF-EXIST

1)
首先用记事本在C:\建立一个test1.bat批处理文件,文件内容如下:
@echo off
IF EXIST \AUTOEXEC.BAT TYPE \AUTOEXEC.BAT
IF NOT EXIST \AUTOEXEC.BAT ECHO \AUTOEXEC.BAT does not exist

然后运行它:
C:\>TEST1.BAT

如果C:\存在AUTOEXEC.BAT文件,那么它的内容就会被显示出来,如果不存在,批处理就会提示你该文件不存在。

2)
接着再建立一个test2.bat文件,内容如下:
@ECHO OFF
IF EXIST \%1 TYPE \%1
IF NOT EXIST \%1 ECHO \%1 does not exist

执行:
C:\>TEST2 AUTOEXEC.BAT
该命令运行结果同上。

说明:
(1) IF EXIST 是用来测试文件是否存在的,格式为
IF EXIST [路径+文件名] 命令
(2) test2.bat文件中的%1是参数,DOS允许传递9个批参数信息给批处理文件,分别为%1~%9(%0表示test2命令本身) ,这有点象编程中的实参和形参的关系,%1是形参,AUTOEXEC.BAT是实参。

3) 更进一步的,建立一个名为TEST3.BAT的文件,内容如下:
@echo off
IF "%1" == "A" ECHO XIAO
IF "%2" == "B" ECHO TIAN
IF "%3" == "C" ECHO XIN

如果运行:
C:\>TEST3 A B C
屏幕上会显示:
XIAO
TIAN
XIN

如果运行:
C:\>TEST3 A B
屏幕上会显示
XIAO
TIAN

在这个命令执行过程中,DOS会将一个空字符串指定给参数%3。

2、IF-ERRORLEVEL

建立TEST4.BAT,内容如下:
@ECHO OFF
XCOPY C:\AUTOEXEC.BAT D:IF ERRORLEVEL 1 ECHO 文件拷贝失败
IF ERRORLEVEL 0 ECHO 成功拷贝文件

然后执行文件:
C:\>TEST4

如果文件拷贝成功,屏幕就会显示“成功拷贝文件”,否则就会显示“文件拷贝失败”。

IF ERRORLEVEL 是用来测试它的上一个DOS命令的返回值的,注意只是上一个命令的返回值,而且返回值必须依照从大到小次序顺序判断。
因此下面的批处理文件是错误的:
@ECHO OFF
XCOPY C:\AUTOEXEC.BAT D:\
IF ERRORLEVEL 0 ECHO 成功拷贝文件
IF ERRORLEVEL 1 ECHO 未找到拷贝文件
IF ERRORLEVEL 2 ECHO 用户通过ctrl-c中止拷贝操作
IF ERRORLEVEL 3 ECHO 预置错误阻止文件拷贝操作
IF ERRORLEVEL 4 ECHO 拷贝过程中写盘错误

无论拷贝是否成功,后面的:

未找到拷贝文件
用户通过ctrl-c中止拷贝操作
预置错误阻止文件拷贝操作
拷贝过程中写盘错误
都将显示出来。

以下就是几个常用命令的返回值及其代表的意义:
backup
0 备份成功
1 未找到备份文件
2 文件共享冲突阻止备份完成
3 用户用ctrl-c中止备份
4 由于致命的错误使备份操作中止

diskcomp
0 盘比较相同
1 盘比较不同
2 用户通过ctrl-c中止比较操作
3 由于致命的错误使比较操作中止
4 预置错误中止比较

diskcopy
0 盘拷贝操作成功
1 非致命盘读/写错
2 用户通过ctrl-c结束拷贝操作
3 因致命的处理错误使盘拷贝中止
4 预置错误阻止拷贝操作

format
0 格式化成功
3 用户通过ctrl-c中止格式化处理
4 因致命的处理错误使格式化中止
5 在提示“proceed with format(y/n)?”下用户键入n结束

xcopy
0 成功拷贝文件
1 未找到拷贝文件
2 用户通过ctrl-c中止拷贝操作
4 预置错误阻止文件拷贝操作
5 拷贝过程中写盘错误

3、IF STRING1 == STRING2

建立TEST5.BAT,文件内容如下:
@echo off
IF "%1" == "A" FORMAT A:

执行:
C:\>TEST5 A
屏幕上就出现是否将A:盘格式化的内容。

注意:为了防止参数为空的情况,一般会将字符串用双引号(或者其它符号,注意不能使用保留符号)括起来。
如:if [%1]==[A] 或者 if %1*==A*

5、GOTO

建立TEST6.BAT,文件内容如下:
@ECHO OFF
IF EXIST C:\AUTOEXEC.BAT GOTO _COPY
GOTO _DONE
:_COPY
COPY C:\AUTOEXEC.BAT D:\
:_DONE

注意:
(1) 标号前是ASCII字符的冒号":",冒号与标号之间不能有空格。
(2) 标号的命名规则与文件名的命名规则相同。
(3) DOS支持最长八位字符的标号,当无法区别两个标号时,将跳转至最近的一个标号。

6、FOR

建立C:\TEST7.BAT,文件内容如下:
@ECHO OFF
FOR %%C IN (*.BAT *.TXT *.SYS) DO TYPE %%C

运行:
C:>TEST7

执行以后,屏幕上会将C:盘根目录下所有以BAT、TXT、SYS为扩展名的文件内容显示出来(不包括隐藏文件)。

posted @ 2006-09-19 14:07 小歪 阅读(261) | 评论 (0)编辑 收藏
  2006年9月18日

DOS完整教程(新手学DOS,easy!) 作者:冰河

 DOS使用常识 DOS的概况 DOS(Disk Operating System)是一个使用得十分广泛的磁盘操作系统,就连眼下流行的Windows9x/ME系统都是以它为基础。

常见的DOS有两种:IBM公司的PC-DOS和微软公司的MS-DOS,它们的功能、命令用途格式都相同,我们常用的是MS-DOS。 自从DOS在1981年问世以来,版本就不断更新,从最初的DOS1.0升级到了最新的DOS8.0(Windows ME系统),纯DOS 的最高版本为DOS6.22,这以后的新版本DOS都是由Windows系统所提供的,并不单独存在。下面的讲解所使用的DOS为Windows98 4.10.2222A的DOS7.0系统。

DOS的基础知识

(1)DOS的组成 DOS分为核心启动程序和命令程序两个部分。 DOS的核心启动程序有Boot系统引导程序、IO.SYS、MSDOS.SYS和COMMAND.COM。它们是构成DOS系统最基础的几个部分,有了它们系统就可以启动。 但光有启动程序还不行,DOS作为一个字符型的操作系统,一般的操作都是通过命令来完成。DOS命令分为内部命令和外部命令。内部命令是一些常用而所占空间不大的命令程序,如dir、cd等,它们存在于COMMAND.COM文件中,会在系统启动时加载到内存中,以方便调用。而其它的一些外部命令则以单独的可执行文件存在,在使用时才被调入内存。 (小知识:可执行的程序文件有*.COM和*.EXE两种,一般来讲,*.EXE文件为软件执行程序,而*.COM文件则为命令程序)

(2)DOS的启动 如果你安装了WIN98,在电脑启动时按住Ctrl不放,出现启动选择菜单,选择5"Command Prompt Only"即可进入DOS方式。 目前我们常用的操作系统有windows 9x/Me,NT,2000等,都是可视化的界面。在这些系统之前的人们使用的操作系统是DOS系统。DOS系统目前已经没有什么人使用了,但是dos命令却依然存在于我们使用的windows系统之中。大部分的DOS命令都已经在Windows里变成了可视化的界面,但是有一些高级的DOS命令还是要在DOS环境下来执行。所以学习命令行对于我们熟练操作Windows系统是很有必要的。 不同的操作系统要用不同的命令进入命令行界面。 在Win9x/Me的开始菜单中的运行程序中键入"command"命令,可进入命令行界面。 在Win2000/NT的开始菜单中的运行程序中键?quot;cmd"命令,可进入命令行界面。 下面我用讲到的DOS命令都可以在Windows Me操作系统中执行。 那么,我们如何进入命令行窗口? 开始——〉运行——〉键入command命令——〉回车 进入了命令行操作界面(DOS窗口),在DOS窗口中只能用键盘来操作。 在DOS中通过输入英文命令加回车键这种方式来执行程序。

(3)DOS的系统提示符 DOS启动后,会显示"C:>"以及一个闪动的光标,这及是DOS的系统提示符,它表示了当前所在的盘符和目录,我们可以输入"[盘符] :"来进行转换,如"A:"、"E:"。这里要注意输入的盘符一定要是存在的。 (小知识:盘符从A到Z,通常A、B盘为软驱,硬盘的盘符从C开始,而光驱的盘符为最后一个)

(4)文件及目录 电脑中的数据主要都是以文件形式存储的,也可以说DOS以文件的形式来管理数据。 文件是相关数据的集合,若干数据聚集在一起组成一个文件。每个文件都有文件名,文件名由主文件名和后缀名两部分组成,中间有小圆点隔开。DOS6.22及其以前版本最多仅支持8个字符的主文件名和3个字符的后缀名,而从Windows 95的DOS7.0开始就可支持128个字符的主文件名和后缀名。字母、汉字、数字和一些特殊符号如"!、@、#"都可以作为文件名,但不能有"/、\、|、:、?"等符号。 通常我们可以通过文件的后缀名看出该文件的类型,比如: 后缀名 文件类型  EXE   可执行程序文件  COM   可执行命令文件  BAT   可执行批处理文件  TXT   文本文件  DAT   数据文件  BAK   备份文件  为了方便用户进行操作,DOS还允许使用通配符。所谓通配符,就是"?"与"*"这两个符号,它们可以用来代替文件名中的某些字符。"?"代表一个合法的字符或空字符,比如"AB?D.EXE"文件就可以示"ABCD.EXE"、"ABDD.EXE"、"ABZD.EXE"等。 而"*"则代表若干个字符,如"*.BAT"就代表当前目录下所有后缀名为"BAT"的文件。 DOS以目录树的形式管理磁盘,这里的目录就相当于Windows中的文件夹。和文件夹一样,目录也是一层一层的,构成一个树的形式。在一个盘符中最底层的目录为根目录,根目录下的目录都称为它的子目录,根目录用"\"表示,一个目录的上一层目录用".."表示。我们可以通过路径来查找某一个文件或目录,路径就如同地址一样,可以使用户方便、准确地进行查找。比如"C:\Windows\Command\deltree.exe"就是一个文件的路径。 在同一个目录下,不允许存在相同名称的文件或目录。 DOS的内部命令 DOS的内部命令是进行操作的基础,完成了对它们的学习你就跨进了DOS系统的大门。

 1)DIR--显示指定路径上所有文件或目录的信息 它的格式为"DIR [盘符:][路径][文件名] [参数]",比如"DIR E:\FF.M3U"。输入后回车则会显示出相关信息(如图1)。另外它还有几个参数: /W:宽屏显示,一排显示5个文件名,而不会显示修改时间,文件大小等信息; /P:分页显示,当屏幕无法将信息完成显示时,可使用其进行分页显示; /A:显示具有特殊属性的文件,这里的属性有"H"隐藏、"R"只读等,我们可以输入"DIR *.* /AH"来显示当前目录下所有具有隐藏属性的文件; /S:显示当前目录及其子目录下所有的文件,通过这个参数,我们可以进行某个文件或目录的查找,比如我们可以在"C:>"后输入"DIR *.DAT /S"来查找C盘中所有后缀名为DAT的文件。 几种参数可以同时使用,例如"DIR *.COM /W /P /S"。

2)MD--建立目录 它的格式为"MD [盘符][路径]",例如"MD TEMP"。 注意:该命令一次只能建立一个目录。

3)RD--删除目录 格式为"RD [盘符][路径]"。 注意:该命令只能删除空目录,并且不能删除当前目录。

4)CD--进入指定目录 格式为" CD [路径]",例如"CD HAPPY"。 注意:只能进入当前盘符中的目录。其中"CD\"为回到根目录,"CD.."为回到上一层目录。

5)COPY--拷贝文件 格式为"COPY [源目录或文件] [目的目录或文件]",比如"COPY C:\*.COM D:\",我们也可以输入"COPY C:\Command.COM D:\Command.BAK"来进行文件拷贝并改名。 注意:使用该命令进行文件拷贝时,目的目录一定要存在。

6)DEL--删除文件 格式为"DEL [盘符][路径][文件名] [参数]",比如"DEL C:\DATA\*.BAK"。它有一个参数:"/P",可以使用户在删除多个文件时对每个文件都显示删除询问.

7)REN--改名 格式为"REN [原名] [现名]",7.0以后版本的DOS都支持对文件名和目录名的修改,而以前的DOS只能修改文件名。

8)TYPE--显示文本文件 格式为"TYPE [文件名]",能对文本文件进行查看。

 9)discopy--磁盘复制 [功能] 复制出一个和原来磁盘内容一模一样的磁盘 [格式] diskcopy 源驱动器名 目的动驱器名 [说明] 它的主要用途就是用来备份。比如我们的电脑在刚买来时,会随机附带一些设备驱动程序磁盘,这些驱动程序在以后都有可能用到,为防止这些磁盘的损坏,一定要将它们都备份一套,这时,使用diskcopy命令是比较快捷和方便的。

10) deltree--删除目录树 [格式] [C:][path]DELTREE [C1:][path1] [[C2:][path2] […]] [说明] 这个命令将整个指定目录树全部消灭,而不管它是否是只读、隐藏与否。使用应特别小心。它是一个危险命令。

11) mem--查看你的计算机内存有多少,以及内存的使用情况。 [格式] 直接键入mem命令

 12) chkdsk--检查你的磁盘的使用情况。 [格式] chkdsk 磁盘名 [说明] 例如要检查A盘使用情况,就输入chkdsk A: ,检查c盘使用情况,就输入chkdsk C: ,如果直接输入chkdsk,就检查当前磁盘的使用情况。 13) sys--传递系统文件命令。将DOS的两个隐含的系统IO.SYS和MSDOS.SYS传送到目标磁盘的特定位置上,并将COMMAND.COM文件复制过去。完成后,目标盘成为DOS的启动盘。 [格式] [C:][path]SYS [C1:][path] d2: [说明] 由于这几个文件需要复制到特定位置上,所以用COPY命令完成的复制未必能够启动机器。能过SYS命令,DOS可以将目标盘已占据特定位置的文件移动,并将系统文件复制到相应位置上。参数C1:path用来指明系统文件所在目录。如不指明,则缺省为当前盘的当前目录。所以这个命令一般要在源盘的根目录进行。

14) pass--设定DOS寻找.COM、.EXE、.BAT文件的所在目录 [格式] path=[[drive:]path[;…]]或path [说明] 只打path没有参数时,只显示环境变量内容。有参数时,重新设置path变量。在没有指定path环境变量时,用户发出的命令,DOS首先判断其是否为内部命令,再查找当前目录中是否有主文件名是该命令的可执行文件,如果均不是,则显示信息“Bad command or filename”。如果发出了指定路径的命令,则在指定径中依次查找,仍找不到则出现上述提示。

15) cls--清除显示器屏幕上的内容,使DOS提示符到屏幕左上角。 [格式] cls 16) time--显示和设置DOS的系统时间 [格式] time [hh[:mm[:ss[.cc]]] 17) date--显示和设置DOS的系统日期 [格式] date [MM-DD-YY] 18) ver--显示正在运行的DOS系统版本号 [格式] ver DOS的外部命令 DOS的外部命令就是一些应用程序,能够使用户的操作更加方便和深入。这些外部命令都是以文件的形式存在,Windows系统的DOS外部命令保存在Windwos主目录下的"Command"目录中。下面就让我们来看看常用的一些DOS外部命令。

1  FORMAT(Format.COM)--格式化命令 众所周知,新买的磁盘都必须经过格式化后方能使用,FORMAT命令可以完成对软盘和硬盘的格式化操作,格式为"FORMAT [盘符] [参数]",例如:"FORMAT A: /S"。它有两个常见的参数: /Q:进行快速格式化; /S:完成格式化,并将系统引导文件拷贝到该磁盘。 注意:该命令会清除目的磁盘上的所有数据,一定要小心使用。如果进行了普通的格式化,那磁盘上的数据还有可能恢复,但如果加上了"/Q",那要恢复就比蹬天还难了。

 2  EDIT(Edit.COM)--编辑命令 其实它就是一个文本编辑软件,使用它可以在DOS下方便地对文本文件进行编辑,格式为"EDIT [文件名] [参数]",它的参数不是特别实用,我在此就不多讲。

3  SYS(Sys.COM)--系统引导文件传输命令 它能够将IO.SYS等几个文件传输到目的磁盘,使其可以引导、启动。格式为"SYS [盘符]"

4  ATTRIB(Attrib.EXE)--文件属性设置命令 通过该命令,我们可以对文件进行属性的查看和更改。格式为"ATTRIB [路径][文件名] [参数]",如果不加参数则为显示文件属性。它的参数有"+?"和"-?"两种,"?"代表属性代号,这些代号有:"H"隐藏;"S"系统;"R"只读,"+"表示赋予,"-"表示去除。

5  XCOPY(Xcopy.EXE)--拷贝命令 该命令在"COPY"的基础上进行了加强,能够对多个子目录进行拷贝。它的参数比较多,但是最常用的是"/S",它可以对一个目录下属的多个子目录进行拷贝,另外"/E"可以拷贝空目录。格式为"XCOPY [源路径][源目录/文件名] [目的目录/文件名] [参数]"。

6  SCANDISK(Scandisk.EXE)--磁盘扫描程序 这个命令在实际的操作中有很大的用处,它能对磁盘进行扫描并修复,能够解决大部分的磁盘文件损坏问题。格式为"SCANDISK [盘符:] [参数]"下面是它的几个参数: /fragment [驱动器名:\路径\文件名]:使用这个参数可以显示文件是否包含有间断的块,我们可以通过运行磁盘整理程序来解决这个问题; /all:检查并修复所有的本地驱动器; /autofix:自动修复错误,即在修复时不会出现提示; /checkonly:仅仅检查磁盘,并不修复错误; /custom:根据Scandisk.ini文件的内容来运行Scandisk,Scandisk.ini是一个文本文件,它包含了对Scandisk程序的设置,其中的[custom]块是在加上"/custom"参数后才执行的,用户可以根据自己的不同情况来进行不同的设置; /nosave:在检查出有丢失簇后直接删除,并不转化为文件; /nosummary:不显示检查概要,完成检查后将直接退出程序; /surface:在完成初步检查后进行磁盘表面扫描; /mono:以单色形式运行Scandisk。 我们可以根据不同的情况来加上不同的参数。我们可以执行"scandisk /all /checkonly /nosave /nosummary"来完成对磁盘的检查并且自动退出,另外还可以编辑scandisk.ini文件中设置,再运行"scandisk /custom"。如果被损坏的文件比较多,我们可以使用"/autofix"来进行自动修复,不然会忙死你的。

7  CHKDSK(Chkdsk.EXE)--磁盘检查命令 它会检查磁盘,并会显示一个磁盘状态报告。格式为"CHKDSK [盘符:] [参数]",最常用的参数是"/F",可以对文件错误进行修复。

8   MOVE(Move.EXE)--文件移动命令 使用它可以对文件进行移动。格式为"MOVE [源文件] [目的路径]"。同时也可以使用通配符。

9    DELTREE(Deltree.EXE)--删除命令 这可是DEL命令的超级加强版,它不仅可以删除文件,并且会将指定目录和其下的所有文件和子目录一并删掉。使用它,我们可以很方便的对目录进行彻底的删除。格式"DELTREE [文件/路径] [参数]",参数有一个"/Y",使用时系统会对每个文件进行询问,回答"Y"后才删除。

10   FDISK(Fdisk.EXE)--分区命令 我们可以使用它对硬盘进行分区操作,我在下一部分会进行具体讲解。 以上就是常用的一些DOS外部命令,使用它们可以使你的操作更方便,同时也是进行系统修复所必不可少的。请大家好好地掌握每一个命令及其用处。 更多的DOS命令 命令     功能  ctty     改变控制设备 emm386    扩展内存管理    fdisk     硬盘分区   lh/loadhigh  将程序装入高端内存  move     移动文件,改目录名  prompt    设置提示符  smartdrv   设置磁盘加速器  subst     路径替换  xcopy     拷贝目录和文件 attrib    设置文件属性 defrag    磁盘碎片整理 doskey    调用和建立DOS宏命令 debug     程序调试命令 fc      文件比较 more     分屏显示 vol      显示指定的磁盘卷标号 setver    设置版本 set      设置环境变量 大家如果感兴趣的话,不妨自己在DOS窗口中打打这些命令试试看。 FDISK使用介绍 对硬盘进行分区、格式化,是每个硬盘都必须经过的步骤。在这里我就来具体讲解一下怎样使用FDISK进行硬盘分区。 FDISK程序是DOS和Windows系统自带的分区软件,虽然其功能比不上有些软件,但用它分区是十分安全的。一下就是具体的操作步骤: 1)进入DOS方式。在系统引导、出现"Starting Windows....."的时候按下"F8"键,然后再选择"Command Prompt Only"即可进入DOS方式。 2)键入"FDISK"后回车即可进入。 3)这时软件会问你是否支持FAT32,回答"Y"就可以建立FAT32分区,回答"N"则会使用FAT16,决定以后按回车。 4)出现FDISK的主菜单,要建立分区请选择"1"再回车。 5)建立主分区(Primary Partition),选择"1"后回车。 6)这时系统会询问你是否使用最大的可用空间作为主分区,如果回答"Y",那么软件就会将所有的磁盘空间划分成一个分区,回答"N"则可以划分多个分区,对于现在的硬盘来说,一般都比较大,如果划分成一个分区就不太好管理,因此可以选择输入"N"来分成多个分区。 7)软件会提示你输入主分区的大小,输入后回车。 8)完成后按ESC键回到主菜单。 9)对于一个硬盘,必须设置一个活动分区后才可以引导操作系统,所以我们需要进入"2"项。 10)这是会提示用户输入活动分区的号码,由于只有一个分区,就输入"1"。 完后会在状态栏中显示一个"A",表示此分区为活动分区。 11)一个硬盘只能有一个主分区,因此如果现在要划分剩下的硬盘空间就必须建立扩展分区,回到主菜单后选择"2"。 12)程序会提示用户输入扩展分区的大小。 13)扩展分区建立完成后,会显示主分区和扩展分区的相关资料,按ESC键。  14)这时会提示没有逻辑盘的信息,你可以将整个扩展分区划分成一个逻辑盘,或者分成几个逻辑盘。现在可以输入第一个逻辑盘的大小,然后回车。 15)这时会显示第一个逻辑盘的相关信息,并且要求你输入第2个逻辑盘的大小。 16)完成后即可按ESC键退回到主菜单。 17)这时在按ESC退出FDISK再重新启动,就可以对分区进行格式化了。 如果是对已经分好区的硬盘进行重新分区,那么在主菜单时就必须先进入第三项将分区删除后才能进行。 用FDISK进行硬盘分区 分区从实质上说就是对硬盘的一种格式化。当我们创建分区时,就已经设置好了硬盘的各项物理参数,指定了硬盘主引导记录(即MasterBootRecord,一般简称为MBR)和引导记录备份的存放位置。而对于文件系统以及其他操作系统管理硬盘所需要的信息则是通过之后的高级格式化,即Format命令来实现。用一个形象的比喻,分区就好比在一张白纸上画一个大方框。而格式化好比在方框里打上格子。安装各种软件就好比在格子里写上字。(见图8)可以看得出来,分区和格式化就相当于为安装软件打基础,实际上它们为电脑在硬盘上存储数据起到标记定位的作用。进行硬盘分区,我们最常用的软件是FDISK.com。下面,我们就FDISK的一些功能和使用做一番比较详尽地介绍: 我们以Win 95为例(Win 98和95大致上基本一致),用启动盘启动计算机,在A盘根目录下输入"Format";屏幕上出现信息问你是否要启用FAT32支持,回答"Y"会建立FAT32分区,回答"N"则会使用FAT16,决定以后按Enter键。大家要记住一点,早期的WIN95及DOS并不能识别FAT32结构。如果你想要安装此类系统的话,还是选择FAT16为好。但选择FAT16后,每个分区不能大于2GB。在这里,我们选择FAT16。 这时候,屏幕上将会显示以下4个选项 1. 建立DOS分区或逻辑分区 2. 设置活动分区 3. 删除分区或逻辑分区 4. 显示分区信息 5. 如果你安装有不止一块硬盘,系统还会出现有第5项(Change current fixed disk drive)。 建立主分区 这里,缺省的选项是"1"。如果你的硬盘还没有建立过分区的话,直接按ENTER键即可。然后,在图11所示对话框中选择"建立主分区(Primary Partition)",选择"1"再按下Enter键。这时,系统会询问你是否使用最大的可用空间作为主分区,缺省的回答是"Y",你只要直接按下Enter键即可。当然,当程序问你是否要使用最大的可用空间作为主分区时,你也可以回答"N"然后按Enter键。这时,系统会要求你输入主分区的大小,输入以后按Enter键。这时,系统将会自动为主分区分配逻辑盘符"C"。然后屏幕将提示主分区已建立并显示主分区容量和所占硬盘全部容量的比例,此后按"Esc"返回FDISK主菜单。 建立扩展分区 在FDISK主菜单中继续选择"1"进入 "建立分区菜单" 后再选择"2"建立扩展分区,屏幕将提示当前硬盘可建为扩展分区的全部容量。此时我们如果不需要为其它操作系统(如NT、LINUX等)预留分区,那么建议使用系统给出的全部硬盘空间,此时可以直接回车建立扩展分区,然后屏幕将显示已经建立的扩展分区容量。 设置逻辑盘数量和容量 扩展分区建立后,系统提示用户还没有建立逻辑驱动器,此时按"Esc"键开始设置逻辑盘,提示用户可以建为逻辑盘的全部硬盘空间,用户可以根据硬盘容量和自己的需要来设定逻辑盘数量和各逻辑盘容量。设置完成后,此时屏幕将会显示用户所建立的逻辑盘数量和容量,然后返回FDISK主菜单。 激活硬盘主分区 在硬盘上同时建有主分区和扩展分区时,必须进行主分区激活,否则以后硬盘无法引导系统。在FDISK主菜单上选择"2"(Set active partition),此时屏幕将显示主硬盘上所有分区供用户进行选择,我们的主盘上只有主分区"1"和扩展分区"2",当然我们选择主分区"1"进行激活,然后退回FDISK主菜单。 一切结束以后,退出FDISK程序。继续按"Esc"键退出至屏幕提示用户必须重新启动系统,必须重新启动系统,然后才能继续对所建立的所有逻辑盘进行格式化(Format)操作。 注意事项:在建立分区时,以下几点是值得您注意: 1.主分区和逻辑分区 主分区的特性是在任何时刻只能有一个是活动的,当一个主分区被激活以后,同一硬盘上的其他主分区就不能再被访问。所以一个主分区中的操作系统不能再访问同一物理硬盘上其他主分区上的文件。而逻辑分区并不属于某个操作系统,只要它的文件系统与启动的操作系统兼容,则该操作系统就能访问它。 主分区和逻辑分区的一个重要区别是:每个逻辑分区分配唯一的驱动器名(盘符),而在同一硬盘上的所有主分区共享同一个驱动器名,因为某一时刻只能有一个主分区是活动的。这就意味着某一时刻只能用共享驱动器名访问活动的那个主分区。系统支持多达24个逻辑分区,这样,可能有许多人都会有这样一个错误的认识,那就是在对硬盘进行分区时最好多创建几个逻辑分区,这样可以避免出现问题的分区影响到保存在其他分区中的数据。但是事实往往并非如此,一个被损坏的分区往往会导致整个硬盘无法正常使用。我们已经在前面提到过主分区和扩展分区的信息都是被保存在MBR中,如果由于某种原因使MBR受到破坏,硬盘主分区将无法使用,进而使包含操作系统的启动盘也无法使用。 是也许有人会认为逻辑分区的信息并不保存在MBR中,因此逻辑分区并不会受到任何影响。其实我们忽略了这样一个事实,那就是虽然逻辑分区的信息保存在扩展分区内,但是扩展分区的信息却是被保存在MBR中。这样,通过相互之间的作用,使逻辑分区最终也不能免受影响。不过一般情况下,一个分区受到损坏而其他分区仍然可以正常工作。例如,如果一个逻辑分区出现问题,很多时候其他的逻辑分区以及主分区和扩展分区都不会受到任何影响。但是话又说回来,出现问题的分区往往就是那些使用最频繁的分区,也就是MBR。 2.驱动器名的分配   启动系统时,活动分区上的操作系统将执行一个称为驱动器映像的过程,它给主分区和逻辑分区分配驱动器名。所有的主分区首先被映像,而逻辑分区用后续的字母指定。一般来说,主分区将被定义为C,然后,系统会根据逻辑分区的多少依次给出D,E。。。。直到Z。当然,如果你有不两块硬盘的话,情况又会发生一些变化。我们举例说明,我们将每块硬盘都分为两个区,第一个硬盘的第一分区为主分区(盘符C),则第二个硬盘的第一分区为D,第一个硬盘的第二分区为E,第二个硬盘的第二分区为F。 3.容量的分配 要分割成几个分区以及第一个分区所占有的容量,取决于使用者自己的想法,有些人喜欢将整个硬盘规划单一分区,有些人则认为分割成几个分区比较利于管理。例如,分割成两个分区,一个储存操作系统文件,另一个储存应用程序文件;或者一个储存操作系统和应用程序档案,另一个储存个人和备份的资料。至于分区所使用的文件系统,则取决于你要安装的操作系统。一般来说,主分区由于经常会进行数据 的交换,因此容量不宜太小。其他的分区的大小分配则完全取决于个人喜好了。   分区建立完了,接下去,我们应该查看一下具体的分区内容,做到心中有数。在FDISK主界面上,按"4",回车。A区显示了当前的分区情况,B区显示了硬盘的总容量,C区则进一步询问你是否要显示详细的逻辑分区情况。 我们一部分一部分的来分析。如图15所示,在分区信息中: ①第一行是当前的硬盘号,因为只有一个硬盘,所以硬盘号为1。下面几行是分区信息。 ②第一栏是当前分区,有1,2两部分,分别表示基本分区和扩展分区。 ③第二栏是状态。A表示是活动分区。 ④第三栏是分区类型,C为PRI DOS,即基本分区,下面这个是EXT DOS 即扩展分区。 ⑤第四栏是硬盘卷标,它就好像我们给每个分区起的名字。 ⑥第五栏是分区的大小,用多少兆字节(Mbytes)来表示。 ⑦第六栏是系统文件分配表类型,显示FAT16。 ⑧最后一栏是基本和扩展分区占总容量的比例。 接下来我们再来看B区中的硬盘的容量,中表示"硬盘的总容量为4126M",即通常我们所说的4.3G的硬盘。 这时候,系统会询问是否查看扩展DOS分区的信息,选"Y"则进入下一项。 因为只有一个扩展分区,所以只有D、E盘的信息显示出来,虽然现在扩展分区分成了两个逻辑分区,但我们只能将逻辑分区叫做D、E盘,而不能称这个扩展分区为D、E盘。这里显示按ESC键继续。 至此,分区的建立算是完成了。如果你对现行的分区不满意,你可以将分区删除后重新来。在建立分区时,我们遵循的步骤是: 建立基本分区-> 建立扩展分区à 分成一个或几个逻辑分区;而我们在删除分区时则需要遵循以下原则: 删除逻辑分区-> 删除扩展分区-> 删除基本分区 分区的删除 删除逻辑分区,进入FDISK主界面。选择3,回车。选择了删除分区选择后,又出现下一级子菜单,包括如下内容: 1、删除主DOS分区。 2、删除扩展DOS分区。 3、删除扩展分区中的逻辑分区。 4、删除非DOS分区。 关于删除分区的顺序,我们在上文中已经提到过,这里就不再重复了。需要补充的是,如果你的硬盘上有非DOS的分区,则应先将它删除,再删除逻辑分区。 这里,我们直接从删除逻辑分区开始。选择"3"按下回车。下面就开始删除了!系统会用一个不断闪动的"WARNING!"提出警告,同时提示你输入要删除的逻辑分区号。输入E,再回车。 这时候,系统提示输入E分区的卷标号,按屏幕上方的显示输入卷标。   如果没有,就直接回车跳过。系统会再提示确认,输入Y回车,E分区就被删除了。  同样我们删除D分区,接着系统提示扩展分区中所有逻辑区均被删除。 删除完了逻辑分区,我们再回到主界面,删除完逻辑分区后就要删除扩展分区了,这时还要选择3; 这时进入删除界面。然后选2,"删除扩展DOS分区"。 按提示输入"Y",回车。扩展分区就被删除了。删除后如图27所示。 删除完扩展分区后就要删除基本DOS分区了,按ESC返回。选第1项"删除基本DOS分区"。 与其他分区的操作步骤一样,还要输入卷标、输入"Y"确认后回车,基本分区就被删除了。到这里,删除分区的工作就完成了。 删除完成后,我们再次查看分区的情况,屏幕会显示当前硬盘还没有分区. 现在,硬盘又恢复到初始的状态下了。如果你对上次的硬盘分区不满意,现在又可以重新开始了,不过,还应该多思考思考,成熟了再动手呦. 看了前面的文章,相信大家对DOS的基础操作以有了一个较深的印象了吧。但光掌握以上的这些内容是远远不够的,解决电脑问题,最主要的还是能够将学到的死知识转化为自己可以熟练使用的兵器。当然,这也不是一朝一夕就可以达到的,同时也要靠经验的积累。下面就请大家随我一道来看几个实例,从中找出解决问题的关键和主要的思路。 故障事例: 某电脑在使用时突然停电,来电后开启电脑,但Windows系统无法正常启动,死机频繁。 故障分析: 从这个原因,我们可以大致推断:停电造成电脑非法关机而损伤磁盘文件,从而导致Windows系统受到损坏,无法正常运行。 大致操作: 从解决文件损坏这个角度出发,需要修复损坏的文件,如果损坏严重,也可以考虑重装Windows。 具体操作: 1、进入DOS。由于Windows受损,只有在DOS下进行操作。在系统引导、出现"Starting Windows....."的时候按下"F8"键,然后再选择"Command Prompt Only"即可进入DOS方式。为了使修复速度更快,我们可以运行Windows目录下的"SMARTDRV.EXE"程序,这是一个加速磁盘读取速度的缓存程序。 2、运行SCANDISK程序,必要时可以加上"/autofix"参数,这样在第一次选择后就可让程序自动修复。 3、运行CHKDSK程序,查看是否还存在着问题,并可以使用"/F"进行修复。 4、运行Windows,看系统是否恢复正常。如果在启动时提示注册表出错,可以重新进入DOS,在Windows目录下运行"SCANREG /RESTORE",然后在列表中选择一个好的注册表文件就行了。 5、如果文件系统受损严重,就需要重新安装Windows。 如果无法正常进入Windows,那需要重新安装Windows的任务又只得在DOS下进行了。对于广大初学者,在DOS下安装Windows还有一定的困难,下面我就具体讲解一下在DOS下的安装。这里的安装使用光盘启动,若使用软盘启动其操作大致相同。 1、在开机进行自检时按下"DEL"键从而进入BIOS设置,在"BIOS FEATURES SETUP"的"Boot Sequence"将"CDROM"一项设置在最前面;按"ESC"键退到主画面,按"F10"键,并输入"Y",即可存盘退出。 2、在开机前将系统启动盘放入光驱。 3、在启动后的启动菜单中选择"启动并使用光驱(With CDROM)",大家也可以选择启动后自动运行Windows98的安装程序,但那样并不和我意,安装过程将十分漫长,所以在安装前我们需要运行"SMARTDRV.EXE"。 4、进入DOS后就转到光驱盘符,使用"DIR"命令查看目录,然后进入Windows的安装目录(目录名大都可以见名知意,一般为"Win98"、"Win"、"Windows"等)。 5、运行"SMARTDRV.EXE"。 6、运行"SETUP.EXE",回车后会进入磁盘扫描,完成后即可进入安装,其操作就和在Windows中安装一样了。   看完了这两个最常见的问题,你是否有所收获?主要大家将基础的东西掌握后,面对问题不慌不乱,仔细思考分析,能从其它的故障中不断总结经验,你也很快会成为一个电脑高手。另外,多帮助他人解决问题也能使你获得更多的锻炼机会,增加自己的知识面,从而可以积累更多、更好的资本。

posted @ 2006-09-18 13:43 小歪 阅读(526) | 评论 (0)编辑 收藏
  2006年9月12日
         用InstallShield做安装程序
         最好是先用安装制作向导Wizard生成一个简单的安装程序,再在这个安装程序上修改,因为这样一些代码能够自动生成,不要自己敲了。
        然后再根据自己的需求,在各个面板中进行修改,注意啊,修改完了要重新生成媒体文件才能生效,要不然看不到效果啊。
       大部分的操作都可以通过面板和菜单完成,一些不能完成的,就需要添加脚本代码了,不认添加环境变量等,也只是在事件函数中调用一些特定函数,在帮助中可以找到。
        自定义对话框,就是自己做一个对话框的界面(可以在InstallShield安装目录下的Example文件夹下找一个模板,复制一个,然后对这个进行修改就行),再写一个Dialog.rul,注意啊,这个脚本一定要让Setup.rul包含,而且在Dialog.rul中,调用对话框的函数(EzDefineDialog)一定要使ID号正确。
       改变对话框右上角的位图,只要在Setup Files中添加一个bmp文件,再在适当位置调用DialogSetInfo就可以了!

       就是不会用命令行!DOS下面,这个挺烦人!
       生成通用的安装程序,加油!
posted @ 2006-09-12 14:57 小歪 阅读(423) | 评论 (0)编辑 收藏
  2006年8月22日
      经过一个半月的忙碌和奔波,终于我在7月20号找到了实习的单位。 时间过得很快,到现在实习已经有一个月的时间了,最大的感触就是生活充实了。 在公司里,同事们都非常和气,尤其是我的顶头上司,脾气超好,经常被我一些幼稚的问题笑倒,而我也渐渐的大胆起来,经常开玩笑,感觉工作很高兴!当然最重要的是工作,这一个月我学到了学多以前根本没想到的知识,这让我很激动,也一直激励着自己努力啊,这些可都是好东东啊!哈哈!希望尽快的学习,尽快的完成任务!继续努力!
posted @ 2006-08-22 19:51 小歪 阅读(481) | 评论 (1)编辑 收藏
仅列出标题  下一页
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

Welcome!

常用链接

留言簿(1)

随笔档案

相册

收藏夹

搜索

  •  

最新评论

阅读排行榜