中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 一個 PRO/E 配置批處理的疑惑 上一主题 | 下一主题
lrb
初级用户





积分 51
发帖 17
注册 2005-9-19
状态 离线
『楼 主』:  一個 PRO/E 配置批處理的疑惑

版大\高手幫忙﹐能幫我解釋下面的批處理寫的是什么嗎?謝謝﹗


@echo off

if NOT "%PTC_BMODE%" == "" goto skipifbmode

@echo off

set MC=unset
if "%PROCESSOR%" == "INTEL_64" set MC=ia64_nt
if "%PROCESSOR%" == "INTEL_486" set MC=i486_nt
if "%PROCESSOR%" == "MIPS_R4000" set MC=r4000_nt
if "%PROCESSOR%" == "Alpha_AXP" set MC=alpha_nt
if "%PROCESSOR_ARCHITECTURE%" == "IA64" set MC=ia64_nt
if "%PROCESSOR_ARCHITECTURE%" == "x86" set MC=i486_nt
if "%PROCESSOR_ARCHITECTURE%" == "MIPS" set MC=r4000_nt
if "%PROCESSOR_ARCHITECTURE%" == "ALPHA" set MC=alpha_nt
if not "%winbootdir%" == "" set mc=i486_win95
if not "%MC%" == "unset" goto mc_done
echo ERROR Cannot detect what machine type you have.
echo Please make one of the following settings:
echo.
echo set PROCESSOR=Alpha_AXP     - For Windows NT Alpha based machines.
echo.
echo set PROCESSOR=MIPS_R4000    - For Windows NT MIPS based machines.
echo.
echo set PROCESSOR=INTEL_486     - For Windows NT Intel based machines.
echo.
echo set PROCESSOR=INTEL_64      - For Windows Intel Itanium based machines.
echo.
echo set winbootdir=<boot dir>   - For Windows 95/98 machines.
echo.
exit
:mc_done

if NOT "%mc%" == "i486_win95" goto postenv4096
  if "%env4096%" == "true" goto postenv4096
    set env4096=true
    command.com /E:4096 /C %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
    set env4096=
    goto ptc_end
:postenv4096

set PRO_MACHINE_TYPE=%MC%

if "%PROOBJ_START_DIRECTORY%" == "" set PRO_DIRECTORY=
if NOT "%PRO_DIRECTORY%" == "" "%PRO_DIRECTORY%\bin\%MC%_ptc_setvars" %0 "proe2001" bat
if "%PRO_DIRECTORY%" == "" %MC%_ptc_setvars %0 "proe2001" bat
call ptc_setvars.bat
del  ptc_setvars.bat

if NOT "%mc%" == "i486_win95" set start_cmd=start ""
if "%mc%" == "i486_win95" set start_cmd=start

set PRO_DIRECTORY=%PRODIR%
if NOT "%PTCPATH%" == "" goto ptcpathset

if NOT "%mc%" == "i486_win95" goto not95
set path="%PRO_DIRECTORY%\bin;%path%"
goto pathdone
:not95
set path=%PRO_DIRECTORY%\bin;%path%
:pathdone

set PTCPATH=true
:ptcpathset


REM ptc-cmdtype: proe

if NOT "%INTRALINK_DIR%" == "" goto ptidir
  set INTRALINK_DIR=__INTRALINK_DIR__
:ptidir


if NOT exist "%INTRALINK_DIR%\%MC%\illib\proilws.dll" goto ptcdefpathset
if NOT "%mc%" == "i486_win95" goto not95two
    set path="%INTRALINK_DIR%\%MC%\illib;%path%"
goto pdtwo
:not95two
    set path=%INTRALINK_DIR%\%MC%\illib;%path%
:pdtwo
  goto ptcilibpathset
:ptcdefpathset
if NOT "%mc%" == "i486_win95" goto not95thr
  set path="%path%;%PRO_DIRECTORY%\%MC%\deflib"
goto pdthree
:not95thr
  set path=%path%;%PRO_DIRECTORY%\%MC%\deflib
:pdthree
:ptcilibpathset

if NOT "%mc%" == "i486_win95" goto not95for
  set path="%path%;%PRO_DIRECTORY%\%MC%\lib"
goto pdfour
:not95for
  set path=%path%;%PRO_DIRECTORY%\%MC%\lib
:pdfour

set PRONCPOST_START=propostq

if "%PTCNMSPORT%" == "" set PTCNMSPORT=1239
"%prodir%\%mc%\nms\nmsq.exe" -quiet -ping
if "%NMSD_TIMEOUT%" == "" set NMSD_TIMEOUT=300
if ERRORLEVEL 1 %start_cmd% /min "%PRO_DIRECTORY%\%MC%\nms\nmsd.exe" -noservice -timeout %NMSD_TIMEOUT%

set PRO_COMM_MSG_EXE=%prodir%\%mc%\obj\pro_comm_msg.exe
set PROE_START=%prodir%\bin\proe2001.bat

if "%CDRS_DATA%" == "" set CDRS_DATA=%prodir%
set PRO_IMAGE_CONVERTER=%prodir%\%mc%\obj\convert_image.exe
set PRO_PHOTORENDER=%prodir%\%mc%\obj\PhotoRender.exe

set GALAXYHOME=%prodir%\%mc%

set PROGUIDE_DIRECTORY=%prodir%\uifdoc
set SPG_DIRECTORY=%\prodir%
set PRO_USRMAIN=%prodir%\usrprog\umain\usrmain.c
set PROTABLE_DIRECTORY=%prodir%\protable
set PROTAB=%prodir%\%mc%\obj\protab.exe
set CLHOME=%prodir%\text\pcldata
set CV_ENV_HOME=%prodir%\%mc%\CV110

if NOT "%LM_LICENSE_FILE%" == "" set LM_LICENSE_FILE=c:\Program Files\proe2001\CRACK\license.dat;%LM_LICENSE_FILE%
if "%LM_LICENSE_FILE%" == "" set LM_LICENSE_FILE=c:\Program Files\proe2001\CRACK\license.dat
set PROE_FEATURE_NAME=PROE_1134265

if exist "%PRO_DIRECTORY%\install\nt\pro_mech_loc.bat" set PRO_MECH_COMMAND=%0
if exist "%PRO_DIRECTORY%\install\nt\pro_mech_loc.bat" call "%PRO_DIRECTORY%\install\nt\pro_mech_loc.bat"
if NOT exist "%PRO_DIRECTORY%\install\nt\pro_mech_loc.bat" goto nomechloc
        if exist "%MECH_LP%\install\nt\pro_mech_env.bat" call "%MECH_LP%\install\nt\pro_mech_env.bat"
:nomechloc

:skipifbmode

set slashb=
if %MC% == i486_nt    set slashb=/b
if %MC% == r4000_nt   set slashb=/b
if %MC% == alpha_nt   set slashb=/b

set slashw=
if "%1" == "pro_wait" set slashw=/w
if "%2" == "pro_wait" set slashw=/w
if "%3" == "pro_wait" set slashw=/w
if "%4" == "pro_wait" set slashw=/w
if "%5" == "pro_wait" set slashw=/w
if "%6" == "pro_wait" set slashw=/w

if "%1" == "-v" set slashw=/w
if "%2" == "-v" set slashw=/w
if "%3" == "-v" set slashw=/w
if "%4" == "-v" set slashw=/w
if "%5" == "-v" set slashw=/w
if "%6" == "-v" set slashw=/w

if exist "%PRO_DIRECTORY%\ptc_startup.bat" call "%PRO_DIRECTORY%\ptc_startup.bat"
if exist "%HOMEDRIVE%\%HOMEPATH%\ptc_startup.bat" call "%HOMEDRIVE%\%HOMEPATH%\ptc_startup.bat"
if exist ".\ptc_startup.bat" call ".\ptc_startup.bat"

REM %start_cmd% "%PRO_DIRECTORY%\%MC%\obj\portmap.exe" -noservice
%start_cmd% %slashb% %slashw% "%PRO_DIRECTORY%\%MC%\obj\xtop" %1 %2 %3 %4 %5 %6
:ptc_end

[ Last edited by willsort on 2005-12-22 at 11:33 ]

2005-12-21 16:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lrb
初级用户





积分 51
发帖 17
注册 2005-9-19
状态 离线
『第 2 楼』:  

最好是每一句都給我解釋一下﹗我萬分感謝﹗

2005-12-21 16:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qq314
初级用户





积分 184
发帖 66
注册 2005-11-18
状态 离线
『第 3 楼』:  

是BAT文件的吧,在网上曾经看过它的详细介绍,你找找看,我不想学过,呵呵

2005-12-21 16:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
gmy
版主

操作系统爱好者


积分 1113
发帖 392
注册 2002-11-11
状态 离线
『第 4 楼』:  

真的怀念没有网络的时代,可以在书的海洋里踏实地学习一些基础知识,现代的年轻人的基础太差了。



DOS之家 http://doshome.com 站长 葛明阳
2005-12-21 16:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
220110
荣誉版主




积分 718
发帖 313
注册 2005-9-26
状态 离线
『第 5 楼』:  

从proilws.dll 等文件看,这是PRO/E的启动或者安装的 .bat文件。
不过好像有点局限,怎么没有看到支持AMD的CPU,按上边已经都支持64位的U啦。不解....
具体解释不想说,水平有限,不想误导人。

2005-12-21 16:53
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lrb
初级用户





积分 51
发帖 17
注册 2005-9-19
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by gmy at 2005-12-21 16:50:
真的怀念没有网络的时代,可以在书的海洋里踏实地学习一些基础知识,现代的年轻人的基础太差了。

如果老大有心幫我的話就請指點﹐而不是一句損人抬己的話就完了﹐這可不是做版大的作風哦﹗正因為我有疑惑﹐我才會問﹗虛心向各路大俠﹑英雄學習不﹐不過我還得感謝你的忠言﹑良藥﹗在此拜謝了﹗

2005-12-22 08:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lrb
初级用户





积分 51
发帖 17
注册 2005-9-19
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by 220110 at 2005-12-21 16:53:
从proilws.dll 等文件看,这是PRO/E的启动或者安装的 .bat文件。
不过好像有点局限,怎么没有看到支持AMD的CPU,按上边已经都支持64位的U啦。不解....
兠...

謝謝你﹗能再深入一點嗎?

2005-12-22 08:36
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 8 楼』:  

Re lrb:

      从全文内容来看,应该就是 220110 兄所提到的 PRO/E 的启动或安装环境配置批处理。此程序只是起到了变量设置和程序入口的作用,所用到的批处理语法都很基础,逐句解释(主要是变量的含义和入口程序的作用)既没有必要,也存在很大难度,因为它需要对 PRO/E 有相当的了解才行。恕我无能为力!



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2005-12-22 11:32
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lrb
初级用户





积分 51
发帖 17
注册 2005-9-19
状态 离线
『第 9 楼』:  

謝謝willsort兄﹐你說的沒有錯﹐這是PRO/E2001的啟動批處理文件﹐因為我是用2001工作的﹐我很想剖析它﹐我對2001有很深入的了解和運用﹐但對批處理不是很了解﹐所以才請各位幫忙的﹗也很想深入的去了解批處理和DOS﹗

特別是這個批處理里面的一些參數我不是很了解﹗

[ Last edited by lrb on 2005-12-22 at 12:43 ]

2005-12-22 12:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: