无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 2567|回复: 5
打印 上一主题 下一主题

关于生成ISO的问题

[复制链接]
跳转到指定楼层
1#
发表于 2012-6-4 13:10:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
自由天空新版的PE里都有个“生成ISO.exe”,请问可不可以用批处理实现这个功能?
2#
发表于 2012-6-4 14:33:41 | 只看该作者
这个程序能生成几种不同引导风格的ISO,内置cdimage、mkisofs,使用经多次稽查,甄别出来的极佳兼容的参数。它必需与sptuppe.exe联袂才能工作。
回复

使用道具 举报

3#
 楼主| 发表于 2012-6-4 14:42:57 | 只看该作者
网上百度后发现去年9月左右发行的五子登科里有“生成iso.cmd”,觉得应该能用批处理实现啊?可惜我批处理仅知皮毛,不会!感觉这个东东挺方便的,修改完后运行下ISO就出来了,那位大侠能整一个出来啊?
回复

使用道具 举报

4#
发表于 2012-6-4 14:46:00 | 只看该作者

回复 #3 6108 的帖子

具体看cdimage、mkisofs的命令行
回复

使用道具 举报

5#
发表于 2012-6-4 14:54:31 | 只看该作者


  1. procedure CreateMINI;
  2. var
  3. p,z,a,b,w:string;
  4. SysTime: TsystemTime;
  5. begin
  6.   p:=ExtractShortPathName(ExtractFilePath(Application.ExeName))+'SKYPETEMP\';
  7.   z:='Sky123_Mini_PE';
  8.   a:=p+'..\'+z+'.iso';
  9.   if fileexists(a+'.bak') then begin SetfileAttr (a+'.bak',128); deletefile(a+'.bak'); end;
  10.   if fileexists(a) then
  11.    if not movefile(a,a+'.bak') then
  12.      begin
  13.        showmessage(a+'正被使用中!');
  14.        Application.Terminate;
  15.        exit;
  16.      end;
  17.     a:=p+'..\MYCD\AXPE\';
  18.     if fileexists(a+'grldr') then begin
  19.     zipFile(a+'grldr',a+'GRLDR.SKY');
  20.     movefile(a+'grldr',P);
  21.     unzipStream('cdimage',p+'CDIMAGE.EXE');
  22.     unzipStream('miniz',p+'b.bif');
  23.     GetSystemTime(SysTime);
  24.     if SysTime.wMonth<10 then a:='0'+IntToStr(SysTime.wMonth) else a:=IntToStr(SysTime.wMonth);
  25.     if SysTime.wday<10 then b:='0'+IntToStr(SysTime.wday) else b:=IntToStr(SysTime.wday);
  26.     a:=a+'/'+b+'/'+IntToStr(SysTime.wyear) +',';
  27.     if SysTime.whour<10 then b:='0'+IntToStr(SysTime.whour) else b:=IntToStr(SysTime.whour);
  28.     a:=a+b+':';
  29.     if SysTime.wminute<10 then b:='0'+IntToStr(SysTime.wminute) else b:=IntToStr(SysTime.wminute);
  30.     a:=a+b+':';
  31.     if SysTime.wsecond<10 then b:='0'+IntToStr(SysTime.wsecond) else b:=IntToStr(SysTime.wsecond);
  32.     w:=' -t'+a+b+' -g ';
  33.     a:= '"'+p;
  34.     b:=a+'cdimage.exe" -l"'+z+'" -h -n -m -o -d'+w+'-c -b'+a+'b.bif" -o "'+p+'..\mycd" "'+z+'.ISO"';
  35.     a:=p+'..\mycd\';
  36.     movefile(a+'AXPE\BOOTMGR',p);
  37.     movefile(a+'AXPE\BCD',p);
  38.     movefile(a+'AXPE\HDD',p);
  39.     WinExecAndWait32(b,1);
  40.     if fileexists(p+'BOOTFIX.BIN') then moveFile(p+'BOOTFIX.BIN',a+'AXPE\');
  41.     movefile(p+'BOOTMGR',a+'AXPE\');
  42.     movefile(p+'BCD',a+'AXPE\');
  43.     movefile(p+'HDD',a+'AXPE\');
  44.     movefile(p+'grldr',a+'AXPE\');
  45.     if fileexists(a+'AXPE\GRLDR.SKY') then deletefile(a+'AXPE\GRLDR.SKY');
  46.     if Directoryexists(p) then winExec(pchar('cmd /c RD /S /Q "'+p+'"'), SW_HIDE);
  47.     end else if lg963 then showmessage('未发现 '+ExtractFilePath(Application.ExeName)+'MYCD\AXPE\GRLDR!') else
  48.        showmessage(ExtractFilePath(Application.ExeName)+'MYCD\AXPE\GRLDR is missing!');
  49. end;
复制代码


以上是创建ntldr引导格式的ISO时的过程,当中又调用了下面一些函数或过程.
zipFile(...);
movefile(...);
unzipStream(...)
GetSystemTime(...)
回复

使用道具 举报

6#
 楼主| 发表于 2012-6-4 17:39:33 | 只看该作者
有点儿像是Delphi 函数?好多判断等,晕了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-2-23 13:39

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表