分类目录归档:技术文献

Oscdimg 命令行选项使用

Oscdimg 是一个命令行工具,用于创建自定义的 32 位或 64 位版本的 Windows(R) PE 映像文件 (.iso)。然后可以将该 .iso 文件刻录到 CD-ROM 或 DVD-ROM。Oscdimg 支持 ISO 9660、Joliet 和通用磁盘格式 (UFD) 文件系统。
备注
若要创建可启动 CD-ROM,必须使用 CD 刻录软件,该软件可以解包 .iso 文件,并将其刻录到 CD-ROM。只将 .iso 文件复制到 CD-ROM 将不起作用。
运行 Windows Server 2003 的基于 Itanium 的计算机不支持 Oscdimg 工具。

Oscdimg 命令行选项
下列命令行选项可用于 Oscdimg。
oscdimg [options] SourceLocationTargetFile
选项 描述
-a
显示文件和目录的分配摘要。
-b location
指定 El Torito 引导扇区文件的位置。不能使用任何空格,例如,-bC:\Directory\Etfsboot.com
-c
指定使用 ANSI 文件名,而不是 OEM 文件名。
-d
不强制将小写字母文件名转换为大写字母。
-e
此选项可禁用 El Torito 编录中的软盘模拟。此选项仅能用于单一启动项映像,不能与任何多启动项开关配合使用。
-g
对所有文件使用通用协调时间 (UCT) 而不是当地时间。
-h
包括隐藏文件和目录。
-j1
对 Joliet Unicode 文件名进行编码并在 ISO 9660 名称空间中生成兼容 DOS 的 8.3 文件名。这些文件名可以被 Joliet 系统或传统的 ISO 9660 系统读取,但是 Oscdimg 可能会更改 ISO 9660 名称空间中的一些文件名,以符合 DOS 8.3 和/或 ISO 9660 命名限制。
使用 -j1、-j2 或 -js 选项时,-d、-n 和 -nt 选项不会应用且无法使用。
-j2
在无标准 ISO 9660 名称的情况下对 Joliet Unicode 文件名进行编码。(要求 Joliet 操作系统从 CD-ROM 读取文件。)
使用 -j1、-j2 或 -js 选项时,-d、-n 和 -nt 选项不会应用且无法使用。
-js
覆盖用于 -j2 选项的默认文本文件,例如,-jsc:\Readme.txt
使用 -j1、-j2 或 -js 选项时,-d、-n 和 -nt 选项不会应用且无法使用。
-k
即使它无法打开一些源文件,仍创建映像。
-l labelname
指定卷标。不能在 l 和labelname之间使用空格。
例如,-lMYLABEL
-m
忽略映像的最大大小限制。
-maxsize: limit
覆盖映像的默认最大大小。默认大小为 74 分钟的 CD,除非使用 UDF,在该情况下,默认值是没有最大大小。limit 值以兆字节 (MB) 为单位指定。例如,-maxsize:4096 可限制映像为 4096 MB。
-m 选项不能与此选项一起使用。
-n
允许使用长文件名。
-nt
允许与 Windows NT 3.51 兼容的长文件名。
-o
通过使用 MD5 哈希算法比较文件来仅对重复文件进行一次的编码,从而优化存储。
-oc
通过使用每个文件的二进制比较来仅对重复文件进行一次编码,从而优化存储。此选项的速度比 -o 慢。
-oi
通过对重复的文件仅进行一次编码来优化存储。比较文件时,忽略菱形压缩时间戳。
-os
通过对重复的文件仅进行一次编码来优化存储。在创建映像时显示重复的文件。
-ois
通过对重复的文件仅进行一次编码来优化存储。比较文件时,忽略菱形压缩时间戳。在创建映像时显示重复的文件。
-p
指定要用于 El Torito 编录中平台 ID 的值。默认值是 0x00,表示 x86 平台。此选项仅能用于单一启动项映像,不能与任何多启动项开关配合使用。
-q
仅扫描源文件;此命令不会创建映像。
-t mm/dd/yyyy,hh:mm:ss
为所有文件和目录指定时间戳。不要使用任何空格。使用美国日期格式和 24 小时制。可以在项目间使用任何分隔符。
例如,
复制代码 -t12/31/2000,15:01:00
-u1
生成包含 UFD 文件系统和 ISO 9660 文件系统的映像。ISO 9660 文件系统将使用兼容 DOS 的 8.3 文件名写入。UFD 文件系统将使用 Unicode 文件名写入。此选项不能与 -n、-nt 或 -d 选项组合使用。
-u2
生成仅包含 UFD 文件系统的映像。不能读取 UFD 的任何系统都将只能看到一个默认文本文件,警告用户该映像仅在支持 UDF 的计算机上可用。此选项不能与 -n、-nt 或 -d 选项组合使用。
-ur
覆盖用于 -u2 选项的默认文本文件。例如:-urc:\Readme.txt
此选项不能与 -n、-nt 或 -d 选项组合使用。
-us
在可用时创建稀疏文件。此选项仅能与 -u2 选项一起使用。此选项不能与 -n、-nt 或 -d 选项组合使用。
-ue
创建内嵌文件。此选项仅能与 -u2 选项一起使用。此选项不能与 -n、-nt 或 -d 选项组合使用。
-uf
内嵌 UFD 文件标识符项。此选项仅能与 -u2 选项一起使用。此选项不能与 -n、-nt 或 -d 选项组合使用。
-uv
在 DVD 视频/音频磁盘创建过程中,指定 UDF 视频区兼容性。这意味着 UDF 1.02 和 ISO 9660 将写入磁盘。另外,VIDEO_TS、AUDIO_TS 和 JACKET_P 目录中的所有文件将首先写入。这些目录优先于用于此映像的所有其他排序规则。此选项不能与 -n、-nt、-d、-j1、-j2、-js、-u1、-u2、-ur、-us、-ue、-uf 或 -yl 选项组合使用。
-ut
在 DVD 视频/音频磁盘创建过程中,截断映像的 ISO 9660 部分。使用此选项时,从 ISO 9660 文件系统仅能看到 VIDEO_TS、AUDIO_TS 和 JACKET_P 目录。此选项不能与 -n、-nt、-d、-j1、-j2、-js、-u1、-u2、-ur、-us、-ue、-uf 或 -yl 选项组合使用。
-w1
报告不兼容 ISO 或 Joliet 的所有文件名和深度。
-w2
报告不兼容 DOS 的所有文件名。
-w3
报告所有零长度文件。
-w4
报告复制到映像的每个文件名。
-x
计算并编码映像中的 AutoCRC 值。
-yd
取消对具有相同初始 64,000 字节的不同文件发出的警告信息。
-yl
指定长分配描述,而不是短分配描述。此选项不能与 -n、-nt 或 -d 选项组合使用。
-y5
指定磁盘中的文件布局。此选项首先以逆序在 i386 目录中写入所有文件。
-y6
指定应在扇区末尾完全对齐的目录记录。
-yo
指定磁盘中的文件布局。此选项可指定一个文本文件,其中包含将放到映像中的文件的布局。下面列出了此文件的规则。
顺序文件必须为 ANSI。
顺序文件必须以一个新行结尾。
顺序文件必须每行包含一个文件。
必须相对于映像的根目录指定每个文件。
必须为每个文件指定一个长文件名。不允许使用短名称。
每个文件路径长度不能超过 MAX_PATH,包括卷名称。
请注意并非所有文件都必须在顺序文件中列出。如果没有排序文件,则此文件未列出的所有文件都应按默认的顺序排序。
重要事项
-yo 选项优先于 -y5 选项。

-yw
打开源文件且可以写共享。
SourceLocation
必需。指定您要创建到 .iso 映像中的文件的位置。
TargetFile
指定 .iso 映像文件的名称。

创建 DVD 映像
对于 4.5 GB 以上的映像,必须创建一个引导顺序文件 (Bootorder.txt),以确保引导文件都位于映像的开头。例如,
复制代码 oscdimg -m -n -yoC:\temp\bootorder.txt -bC:\winpe_x86\etfsboot.com
以下文件在 bootorder.txt 中的位置。
复制代码 boot\bcd
boot\boot.sdi
boot\bootfix.bin
boot\bootsect.exe
boot\etfsboot.com
boot\memtest.efi
boot\memtest.exe
boot\en-us\bootsect.exe.mui
boot\fonts\chs_boot.ttf
boot\fonts\cht_boot.ttf
boot\fonts\jpn_boot.ttf
boot\fonts\kor_boot.ttf
boot\fonts\wgl4_boot.ttf
sources\boot.wim

Windows 8 安装Visual studio 2008的方法

WIN8下也能运行VS2008软件,但是如果直接安装VS2008的话是不能成功的,必须首先手动安装NET Framework 3.5,然后才能成功地安装VS2008。下面是在WIN8下安装NET Framework 3.5的方法:
WIN8下面安装.NET3.5,即便是离线安装包,整个安装过程还是需要联网验证,安装速度超级慢。我们改为离线安装,步骤如下:
1、解压WIN8的ISO安装包到F盘根目录下(存放目录随意,但是下面的目录需要相同)
2、按键Win+X,选择命令提示符(管理员)
3、输入以下命令:(F为步骤1所解压的WIN8文件)
dism.exe /online /enable-feature /featurename:NetFX3 /Source:F:\sources\sxs
点击查看原图

4、然后进入控制面板-》程序-》启用或关闭Windows功能,看第一项已经勾选上,安装成功。

点击查看原图
5、按正常方式安装VS2008,下面的图表示我安装成功了。

点击查看原图

Windows 启动项乱码解决

方法如下:进入Windows系统,使用管理员身份(Administrator)打开命令提示符窗口输入:
bcdedit /set {bootmgr} locale zh-CN
bcdedit /deletevalue {bootmgr} device
bcdedit /deletevalue {bootmgr} path
3项各修改成功后,英文菜单重新启动后双系统菜单就恢复中文了。

WinPE 制作技术文章之 —— 自己DIY亲自制作Win7PE系统

  首先,在D盘新建一个winpe文件夹,在winpe文件夹中再新建sources、pe3和new三个文件夹,把附件中提供的工具imagex连同文件夹一起放到winpe目录中。

制作win7pe步骤:
  1、把windows 7光盘(或光盘镜像)里的\sources\boot.wim文件复制到d:\winpe\sources目录;
  2、在附件提供的imgaex目录里右键点击inf文件,选安装(Imagex 6.0 AIK 封装工具);
  3、运行cmd,进入imgaex目录;
  4、输入:imagex /mountrw d:\winpe\sources\boot.wim 2 d:\winpe\new (将d:\winpe\sources\boot.wim镜像映射到d:\winpe\new目录)备注:如果无法映射可以把 "2"换成"1"
  5、删除d:\winpe\new目录下的setup.exe文件。删除sources文件夹(很重要),可以精简winpe哟;
  6、输入:imagex /unmount /commit d:\winpe\new (合并对d:\winpe\new目录中映像文件的修改,并将其卸载);
  7、输入:imagex /compress maximum /export "d:\winpe\sources\boot.wim" 2 "d:\winpe\pe3\boot.wim",把boot.wim分离并重新压缩;
  8、d:\winpe\pe3\boot.wim即为修改后的镜像。这个时候运行这个映像winpe是默认的“命令提示符”窗口;
?
制作WinPE光盘镜像:
  1. 新建d:\winpe\pe目录和d:\winpe\pe\sources目录;
  2. 复制(windows 7光盘为X)X:\boot目录(包括文件)到d:\winpe\pe目录中,复制X:\efi目录(包括文件)到d:\winpe\pe目录中,复制X:\bootmgr文件到d:\winpe\pe目录中,复制修改后的boot.wim文件到d:\winpe\pe\sources(X为windows7光盘符);
  3. 用UltraISO提取windows 7光盘引导文件,保存为windows7.bif;
  4. 用UltraISO将d:\winpe\pe下的目录和文件添加到光盘镜像,加载windows7.bif,保存镜像为WinPE3.0.iso;

图像shell
  Winpeshl.ini 可控制是否将自定义外壳程序加载到 WindowsPE,而不是默认的“命令提示符”窗口。若要加载自定义外壳程序,请创建一个名为 Winpeshl.ini 的文件,然后将它放在自定义 WindowsPE 映像的 %SYSTEMROOT%"System32 中。该 .ini 文件必须包含以下部分和项:
[LaunchApp]
AppPath = %SYSTEMDRIVE%"myshell.exe
[LaunchApps]
%SYSTEMDRIVE%"mydir"application1.exe, -option1 -option2
application2.exe, -option1 -option2
  将 AppPath 项设置为外壳应用程序的路径。该路径可以是完整的绝对路径,也可以使用环境变量(例如 %SYSTEMROOT%"System32"Myshell.exe)来表示该相对路径。AppPath 项不支持命令行选项。使用 [LaunchApps] 部分运行带命令行选项的应用程序。应用程序按照列出的顺序运行;应用程序的名称及其选项以逗号分隔。当退出“命令提示符”窗口或自定义外壳应用程序时,WindowsPE 将重新启动。不要编辑 Setupreg.hiv 的 HKEY_LOCAL_MACHINE\SYSTEM\Setup 注册表项中的 CmdLine 值来启动外壳应用程序。CmdLine 的值可调用 Winpeshl.exe,Winpeshl.exe 会执行很多函数,包括调用 Windows PE 中的默认“命令提示符”窗口或您的自定义外壳应用程序。
  举例:用b**plorer制作自制 DIY 版WindowsPE,从网上下载b**plorer程序,从CMD到imagex目录:imagex /mountrw d:\winpe\sources\boot.wim 1 d:\winpe\new,解压b**plorer后连同文件夹一起放到d:\winpe\new\windows目录中,把上面建的Winpeshl.ini,里面要指出b**plorer.exe所在的路径,放到d:\winpe\new\windows\system32中。
定义:
【bs_desktop.ini】
这个文件是用来自定义WinPE的桌面快捷方式的,第一行的 [Desktop CFG file Ver.1] 必须保留。
格式:
<-ItemBegin->
ItemX=
ItemY=
Caption=
ExeName=
IconName=
IconNumber=
ExeDir=
CmdParam=
ShowState=
<-ItemEnd->
举例:
<-ItemBegin->
ItemX=20
ItemY=20
Caption=资源管理器
ExeName=%SystemDrive%\Program files\A43\A43.exe
IconName=%SystemDrive%\Program files\A43\A43.ico
IconNumber=0
ExeDir=%SystemDrive%\Program files\A43
CmdParam=
ShowState=NORMAL
<-ItemEnd->
参数说明:
  每一个左边上的图标都是由这样的一段配置生成的,每个图标开头和结尾必须有 <-ItemBegin-> 和 <-ItemEnd-> , ItemX= 是指图标的横向距离,默认第一列为 20 ,第二列为 100 ,第三列为 180 ,以此类推(每下一列的值都比前一列增加 80 ,这是默认的设置,可以自由修改,但这是最好的设计了)。 ItemY 和 ItemX= 一样,但指的是横向坐标(即行数)。 Caption 填什么都可以,支持中文,是图标下的名称文字。 ExeName则是目标文件或程序的路径(要求包括扩展名,可以不是绝对路径。允许使用系统变量)。 IconName 是此快捷方式的图标路径, IconNumber 是此图标文件中的第几个图标,默认为 0 。 ExeDir 是此文件或程序的运行路径。 CmdParam 是专门应用于这个程序的启动(命令行)参数(例如 Nero StartSmart Essentials 的启动参数是 -ScParameter=8 ),大部分大型软件都有用到。 ShowState 是目标的显示方式,默认为 NORMAL ,在此参数下打开窗口不会有任何变化,仍然是原样。

【bs_logon.ini】
  这个文件是用来自定义WinPE的登录方式的,这里只讲解 [Shell] 部分, [Shell] 此行必须保留。
格式:
=
举例:
BS图形界面=%SystemDrive%\Program Files\B**plorer\explorer.exe
参数说明:
  =之前的内容为登陆框下拉菜单中的显示文字(允许空格和汉字),之后的内容为一个WinPE Shell的路径,其实就是一个可执行程序,但是如果只打开一个普通应用程序的话就不会打开桌面,当此程序结束时会退回登录对话框。无论 [Shell] 下面的内容你删去了什么,举例中的那行一定要保留,否则下拉菜单中不会出现 BS图形界面项,自然也无法进入桌面了。
?
【bs_qlaunch.ini】
  这个文件是用来自定义WinPE的快速启动栏的,第一行的 [QLaunch CFG file Ver.1] 必须保留。
格式:
<-ItemBegin->
Caption=
ExeName=
IconNumber=
<-ItemEnd->
  举例:
<-ItemBegin->
Caption=显示桌面
ExeName=@ShowDesktop
IconNumber=20
<-ItemEnd->
参数说明:
  与 bs_desktop.ini 文件一样,就是参数少了点。
?
【bs_menuimg.bmp】
  这个文件中保存着需要用到的一些常见的小程序图标(16×16),此文章中所有的 IconNumber= 都指向这里,所以比较重要。第一个编号为 0,第二个编号为 1 ,以此类推,您可按照16×16的大小添加或修改图标。
?
【bs_explorer.ini】
  这个文件中只有几个需要特别讲解的地方:
DesktopBkgndText= 显示在桌面右下角的文字,颜色默认为白色,可自由修改,值为空时会显示一段版权说明(我看不懂啊)
DesktopTextColor= 规定了桌面上的文字颜色,格式为十六进制颜色数值,默认为 $00ffffff
DesktopTextBkColor= 规定了桌面上的文字的背景色,格式为十六进制颜色数值,默认为 $ffffffFF
其它可能有用的参数(不做详细解释):
NoCheckFiles= 不检查文件,默认为 YES
NoStartMenuIcon= 无开始菜单图标,默认为 NO
NoStartMenuMargin= 无开始菜单边缘空白,默认为 NO
NoDesctopIcon= 不显示桌面快捷方式,默认为 NO
NoQlaunchBar= 不显示快速启动栏,默认为 NO

【BS_START.INI】
  这个文件是最重要的!它规定了开始菜单中的内容。
格式:
<-ItemBegin->
ShowInAutorun=
EnableInAutorun=
ParentItem=
Caption=
ExeName=
IconNumber=
ExeDir=
ShowState=
<-ItemEnd->
举例:
<-ItemBegin->
ShowInAutorun=YES
EnableInAutorun=YES
ParentItem=office
Caption=Word
ExeName=%SystemDrive%\program files\Office97\WORD.EXE
IconNumber=45
ExeDir=%SystemDrive%\program files\Office97
ShowState=NORMAL
<-ItemEnd->
参数说明:
  ShowInAutorun= 和 EnableInAutorun= 两项好像基本在我的自定义实验中并没有什么用处,所以不做讲解。大部分参数都与以上介绍的几个文件相同,ParentItem= 是指向此快捷方式放入哪个文件夹(如果要放到开始菜单的根目录下的话,就需要写入 root )。建立文件夹的格式为:
<-ItemBegin->
ShowInAutorun=YES
EnableInAutorun=YES
ParentItem=programs
Caption=Office 97
MenuId=office
<-ItemEnd->
  MenuId 是一个唯一的标识,普通快捷方式的 ParentItem= 指向的就是这里。
  同样需要特殊说明的是建立分隔线,格式为:
<-ItemBegin->
ShowInAutorun=YES
EnableInAutorun=YES
ParentItem=root
Caption=-
<-ItemEnd->
  同样,ParentItem= 的值属性同上(汉译为:“母物品”)。
imagex /unmount /commit d:\winpe\new
imagex /compress maximum /export "d:\winpe\sources\boot.wim" 1 "d:\winpe\pe3\boot.wim"
  然后把boot.wim放到d:\winpe\pe\sources中,用Ultraiso制作ISO文件(步骤同上),这样以后你的winpe3的外壳界面就是b**plorer带来的效果了。刚快试试吧!

 

制作Bootmgr引导+EFI引导光盘命令格式

oscdimg.exe -m -o -u2 -udfver102 -lmype -bootdata:2#p0,e,b"D:\winpe\pe\boot\etfsboot.com"#pEF,e,b"D:\winpe\pe\efi\microsoft\boot\efisys.bin" D:\winpe\pe D:\mype.iso

 

grldr引导+EFI引导(下列命令中的D:\mycddir\skype是grldr)

OSCDimg.exe -lmyiso -h -m -o -d -g -c -n -bootdata:2#p00,e,b"D:\mycddir\skype"#pEF,e,b"d:\aaa\UEFI.BIN" "D:\mycddir" "D:\abc.ISO"

系统加密比较:Vista BitLocker vs. Mac OS X FileVault

  早在Windows Vista上市之前,便有许多人有意无意地将其与苹果(Apple)的Mac OS X相提并论,试图比较二者的优劣。毕竟,从简单的角度看,Windows Vista与Mac OS 间存在太多的相似点,比如说,Windows Vista的Aero Galss界面与Tiger中的Aqua界面,再比如说Windows Vista中的即时搜索与Mac中的“Spotlight”等.而在操作系统对文件的加密方面,Windows Vista中引入了对BitLocker的支持,这与Mac OS X中的FileVault 也有一定程度的近似,二者欲实现的目标也基本相同:即保护用户的重要数据,使其即使在电脑遗失的情况下也不会造成机密的外流。
  从技术上看,无论BitLocker还是FileVault,均是一种系统级的加密,但尽管二者的目标相同,采取的具体机制则有明显的差别。那么,究竟孰优孰劣?下面我们进行简单的比较。

Windows Vista的BitLocker
  与Mac OS X中的FileVault相比,Windows Vista中的驱动器加密功能BitLocker更为强大,不仅加密、保护用户文件,事实上,BitLocker加密的是整个系统分区,包括Windows系统文件、应用程序以及存放于系统盘的任何个人数据。

  启用了BitLocker的Windows Vista系统,要求在启动时必须插入存有密钥的USB盘,或具有BitLocker恢复密码,不然,系统将无法启动。BitLocker在加密过程中使用一个相对较小的启动分区来检查密钥,只有检测通过硬盘数据才可存取,这样,即使非法使用者将该硬盘挂接在别的可正常启动的系统上,也无法读取该分区中的数据。

  BitLocker的优势: 没有正确的密钥,不仅无法启动进入Windows Vista,而且,正如上文所言,即使非法使用者采取其他手段,如试图以脱机方式浏览存储在受保护驱动器中的文件,也无法读取加密分区内的数据,最大程度地保证了数据的安全。

  BitLocker的不足:从某种程度上说,BitLocker的优势也具有双面性,用户必须确保将自己存有密钥USB盘不要遗失,或者,将BitLocker恢复密码保存到安全位置,不然,也许会发生反而将自己“拒之门外”的惨剧。

  此外,要享受BitLocker带来的好处,用户必须购买Windows Vista Ultimate或Enterprise版,并且,在设置时需调整硬盘分区,新建一个启动分区以及将密钥保存到USB盘等繁琐过程。

Mac OS X的 FileVault
  在Mac OS X中,FileVault自动加密用户文件目录及其中的文件。当用户对其目录中的文件进行读写操作时,FileVault在后台自动对相应文件进行加解密过程,其效率极高,事实上,大多数用户在操作中甚至感觉不到存在这么一个加、解密的过程。

  FileVault使用用户的登录密码作为加解密的密钥。也即是说,只有当用户使用正确的密码登录时,才能看到自己主目录及其下的文件。不然,该文件夹将不可存取。如果同一台Mac机上存在多个用户,那么,每个用户只能看到自己的主目录及目录下的文件,而无法对其他用户目录下的文件进行操作。

  FileVault的优势:FileVault是Mac OS X系统的默认功能,用户不必像Windows Vista那样,必须购买更昂贵的Windows Vista Ultimate 或 Enterprise版才能享受BitLocker功能。同时,与BitLocker相比,不必对硬盘进行重新分区,不必创建存有密钥的USB启动盘,几乎不需任何用户设置,应用较为简便、方便。

  FileVault的不足:即便启用FileVault,非法用户仍能正常启动Mac,这与BitLocker直接让非法用户无法进入系统存在距离,虽然此时从理论上说,非法用户仍然无法读取用户目录下的文件。

小结:Windows Vista更胜一筹
  从上文的简单比较可以看出,尽管要应用BitLocker,需要购买更昂贵的Windows Vista版本,需要远较FileVault复杂的设置过程,但BitLocker的安全防护更为全面,可以从根本上把非法使用者拒之门外,即使其拿到您的PC、您的硬盘,也同样对其上的数据无能为力。

  此外,还必须考虑到,在Windows Vista中,除了BitLocker,还可以使用EFS(Encrypt File System : 加密文件系统),加密特定文件/文件夹,这可实施进行更灵活的数据保护。