关于在纯dos上运行ntdos来分配盘符

最近在搞纯DOS的编程,当中遇到了不少问题,其中有一个就是分区的问题。

首先我要找一个需要带参数运行f的分区工具,找了不久就找到了用gdisk来分区。

找到过后解决了分区的问题,但是又随之而来了另外的一个问题,当我把一个分区隐藏过后(设计需要),再重启过后就没有盘符了,这个就坑爹了,相当于我就没办法读写文件了,那这个问题困扰了我一天左右。后来在电脑上面运行了一下ntdos,发现盘符又回来了,所以我就让程序里面运行"system("ntdos");"。

本来以为问题到这里就解决了,结果又出现了一个大问题,当我的程序运行到了system("ntdos") 过后,我的程序就退回到了dos的命令行界面,这个坑大了,本来我只是想用一下它的盘符而已,结果这直接把我的程序退了。

这个时候我就乱来了,直接在命令行界面输入"exit",这个是退出ntdos的命令,结果发现,我的程序又接着运行了,我就发现了,是这个ntdos在捣鬼。然后我就上网看了一下,发现了ntdos的本来面目。

ntdos其实是相当于进了另外的一个叫NT的系统,当我们运行"ntdos"的时候,其实进了另外一个系统的界面,如果不退出的话,那么相当于"system("ntdos")"没有运行完,后面的语句当然也就不会运行了,那么怎么解决这个问题呢?

当时的思路是:我能不能在NTDOS这个系统中运行我的程序?

报着试一下的心态,我在纯DOS下运行ntdos,但是这个时候我带一个参数,这个参数就是我的程序,在dos的命令行输入"ntdos xxx",结果神奇的事情发生了,我的程序又运行起来了,所以我就在autoexec.bat的文件中写上"ntdos xxx"(因为我的程序要自启动),重启过后,成功了。

所以ntdos是可以带参数的,这个参数就是我们要运行的程序的名字,当然,如果要运行多个程序也可以试一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值