|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『楼 主』:
求教:foxbase中的run/!command failed错误
使用 LLM 解释/回答一下
我在移植一台dos6.22机器,好像时486的,现在移植成功了,但就是运行ucdos下foxbase2.1开发的软件时,有一个foxbase调用dos系统copy的命令,如 run copy *.idx a:,遇到run/! command failed 错误,好像是foxbase没找到dos命令,我把command.com拷贝到程序运行目录,就可以运行了!
难道command.com在启动时没加载到内存中吗?foxbase怎么会找不到呢??
我的config.sys文件:
set path =c:\;c:\dos;c:\ucdos\;c:\fox;
我的路径中有C 和C:\dos, 这两个目录中都有command.com呀!!怎么会不能有copy命令呢???
难道说要在autoexec.bat中
写
path c:\;c:\dos;c:\ucdos\;c:\fox;
请问在config.sys和autoexec.bat中设置path有何区别呢???
I'm transplanting a DOS 6.22 machine, it seems to be a 486. Now the transplantation is successful, but when running software developed with FoxBASE 2.1 under UCDOS, there is a FoxBASE calling the DOS system copy command, such as run copy *.idx a:, and there is an error of run/! command failed. It seems that FoxBASE can't find the DOS command. I copied command.com to the program running directory, and then it can run!
Is it that command.com is not loaded into memory at startup? Why can't FoxBASE find it?
My config.sys file:
set path =c:\;c:\dos;c:\ucdos\;c:\fox;
There are C and C:\dos in my path, and there are command.com in both directories! Why can't there be the copy command???
Could it be that in autoexec.bat
write
path c:\;c:\dos;c:\ucdos\;c:\fox;
May I ask what is the difference between setting path in config.sys and autoexec.bat???
|
|
2008-11-4 20:12 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
|
2008-11-4 21:18 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
dos 7.10.+ucdos7+foxbase2.1+
我现在的机器是奔腾4
什么时第二层,难道时在foxbase中调用就时第二层??
dos 7.10.+ucdos7+foxbase2.1+
My current machine is Pentium 4
What is the second layer? Does it mean that calling in FoxBase is the second layer?
|
|
2008-11-4 21:37 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
不仅仅是在 foxbase 中调用系统命令或执行外部程序就叫第二层,而是所有应用程序要这样做都要调用第二层 shell ,比如 NC, QEdit, DOSSHELL, VC, DN 这样做的话都要调用第二层 shell,第一层 shell 就是你启动 DOS 后加载到内存中的命令解释器。
另外我认为像你这样的情况用移植一词好像不太确切,实际就是转移。
Not only is calling system commands or executing external programs in foxbase called the second layer, but all applications that do so need to call the second-layer shell. For example, NC, QEdit, DOSSHELL, VC, DN, etc., when doing so, all need to call the second-layer shell. The first-layer shell is the command interpreter loaded into memory after you start DOS.
In addition, I think the term "port" seems not quite accurate in your case. Actually, it is relocation.
|

DOS倒下了,但永远不死
DOS NEVER DIES !
投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187
本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747 |
|
2008-11-4 22:05 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 5 楼』:
求教:DOSforever,还是关于run/!错误!!
使用 LLM 解释/回答一下
DOSforever,非常感谢,但我在config.sys中设置了set comspec=c:\command.com,重启机器,还是有run /! 错误。
我在foxplus 下运行自己的fxst程序,调用copy菜单就有run/!错误,但在foxbase下运行run copy 就正确,而我把command.com拷贝到fxst程序目录下,在foxplus fxst下运行copy菜单就正常了,请问为什么??
再者,移植和转移有什么区别??
谢谢,赐教!!!
DOSforever, thank you very much, but I set set comspec=c:\command.com in config.sys, restarted the machine, and there was still the run /! error.
I run my own fxst program under foxplus, and there is a run/! error when calling the copy menu, but it is correct when running run copy under foxbase, and I copied command.com to the fxst program directory, and it is normal when running the copy menu under foxplus fxst, why?
Moreover, what is the difference between porting and transferring??
Thank you, please enlighten me!!!
|
|
2008-11-5 09:23 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
|
2008-11-5 22:44 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 7 楼』:
再问DOSforever,关于run/!命令
使用 LLM 解释/回答一下
我要不拷贝 command.com命令到程序文件夹下,也不能在foxbase中运行run copy命令 ,如果拷贝了command.com命令,就可以在foxbase下运行,自然也可以直接运行foxplus fxst(自己的程序)了,这是怎么回事??
难道是内存不够,我的upper memory总共才7k
If I don't copy the command.com command to the program folder, and I can't run the run copy command in foxbase. If I copy the command.com command, then I can run it in foxbase, and naturally I can directly run foxplus fxst (my own program). What's the matter? Is it because there is not enough memory? My upper memory is only 7k in total
|
|
2008-11-6 09:18 |
|
|
netwinxp
高级用户
   
积分 741
发帖 366
注册 2007-7-25
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
command.com分为常驻部分和暂驻部分,如果应用程序所需内存太大或者是.com文件,那么command.com会先释放暂驻部分,然后再运行应用程序,退出应用程序后再装入暂驻部分。如果在应用程序中使用DOSSHELL功能就会要求装入暂驻部分,但此时应用程序并不会把环境变量传递过去,所以要在当前目录有command.com。
command.com is divided into resident part and transient part. If the application requires too much memory or is a.com file, command.com will first release the transient part, then run the application. After exiting the application, it will reload the transient part. If the DOSSHELL function is used in the application, it will require loading the transient part, but at this time the application will not pass the environment variables, so there must be command.com in the current directory.
|
|
2008-11-6 09:54 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
|
2008-11-7 21:39 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 10 楼』:
使用 LLM 解释/回答一下
“我后来试了下,在 MS-DOS 7.10 ,不使用 CONFIG.SYS 和 AUTOEXEC.BAT”
那使用什么???
我也用了comspec=c:\command.com,但还是有不把command.com拷贝到程序运行目录下就出现command 错误,为什么???
"I tried later. In MS-DOS 7.10, without using CONFIG.SYS and AUTOEXEC.BAT"
Then what to use???
I also used comspec=c:\command.com, but there is still a command error if command.com is not copied to the program running directory. Why???
|
|
2008-11-13 11:32 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
|
2008-11-13 12:42 |
|
|
Climbing
铂金会员
       网络独行侠
积分 6962
发帖 2753
注册 2003-4-16 来自 河北保定
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
只能说明foxbase有bug了。
It can only indicate that there is a bug in FoxBase.
|

偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
|
|
2008-11-13 13:49 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 13 楼』:
使用 LLM 解释/回答一下
但,我移植前的那台很老的计算机就好用呀,我的配置文件config.sys,autoexec.bat都跟他一样呀,不能是foxbase的bug呀
But, the very old computer before my porting works well. My configuration files config.sys and autoexec.bat are the same as his. It can't be a bug of FoxBase.
|
|
2008-11-14 09:38 |
|
|
DOSforever
金牌会员
     
积分 4639
发帖 2239
注册 2005-1-30
状态 离线
|
|
2008-11-16 22:12 |
|
|
soslowcar
初级用户
 
积分 51
发帖 20
注册 2008-11-4
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
是在网上下的,做成两张软盘,从软盘启动,安装的dos7.1
It was downloaded online, made into two floppy disks, booted from the floppy disk, and installed DOS 7.1.
|
|
2008-11-17 16:01 |
|