中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » WinXP命令行下的DOS对同时打开文件数也有限制!
作者:
标题: WinXP命令行下的DOS对同时打开文件数也有限制! 上一主题 | 下一主题
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『楼 主』:  WinXP命令行下的DOS对同时打开文件数也有限制!

用下面的一断代码做了一个实验,发现WinXP命令行下的DOS对同时打开文件数也有限制!我的XP只能同时再打开15个文件.
    如果在纯DOS下面、Win9X下面可以修改c:\Config.Sys文件的FILES=??解决,XP下如果解决呢!

void MyDebug()
{
        int i;
        char buf[256];

        FILE* psFile[ 20 ];
        for (i = 0; i < 20; i++)
        {
            sprintf(buf, "Abcde-%02d.Txt", i + 1);
            psFile[ i ] = fopen(buf, "a+b");

        }

        for (i = 0; i < 20; i++)
        {
            printf("\nFile%02d::%08lX", i + 1, (unsigned long)psFile);
            if (NULL != psFile)
            {
                ::fclose( psFile );
                psFile[ i ]= NULL;
            }
        }

        getch();

        return;
}

执行结果是:
File01::75BF71CE
File02::75BF71E2
File03::75BF1F6
.....
File14::75BF72D2
File15::75BF72E6
File16::00000000
File17::00000000
File18::00000000
File19::00000000
File20::00000000

[ Last edited by firstsail on 2010-1-28 at 19:13 ]

2010-1-28 09:40
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 2 楼』:  

修改 windows\system32\config.nt 试试?



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
2010-1-28 18:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 3 楼』:  

修改我的c:\WindowXP\System32\Config.NT文件

    我将文件里面的Files=40改成Files=60后重新启动计算机,执行同样的代码还是原结果,没有达到预期目的!

执行结果是:
File01::75BF71CE
File02::75BF71E2
File03::75BF1F6
.....
File14::75BF72D2
File15::75BF72E6
File16::00000000
File17::00000000
File18::00000000
File19::00000000
File20::00000000

2010-1-28 19:07
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 4 楼』:  

贴子显示怎么不正常


明明是这样
for (i = 0; i < 20; i++)
        {
            printf("\nFile%02d::%08lX", i + 1, (unsigned long)psFile);
            if (NULL != psFile)
            {
                ::fclose( psFile);
                psFile[ i ]= NULL;
            }
        }

怎么显示成
for (i = 0; i < 20; i++)
        {
            printf("\nFile%02d::%08lX", i + 1, (unsigned long)psFile);
            if (NULL != psFile)
            {
                ::fclose( psFile);
                psFile[ i ]= NULL;
            }
        }


将"第一楼贴子"拷贝到"记事本"程序里面,看到的情况是正常的,但眼睛看到的情况切是第二种情况,难道有病毒不成???

[ Last edited by firstsail on 2010-1-28 at 19:18 ]

2010-1-28 19:15
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 5 楼』:  

明明是这样
for (i = 0; i < 20; i++)
        {
            printf("\nFile%02d::%08lX", i + 1, (unsigned long)psFile[i]);
            if (NULL != psFile[i])
            {
                ::fclose( psFile[i]);
                psFile[ i ]= NULL;
            }
        }

怎么显示成
for (i = 0; i < 20; i++)
        {
            printf("\nFile%02d::%08lX", i + 1, (unsigned long)psFile);
            if (NULL != psFile)
            {
                ::fclose( psFile);
                psFile[ i ]= NULL;
            }
        }


发现是修改贴子后,就会有这样现象,怪!

2010-1-28 19:20
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 6 楼』:  

估计是你代码中的 [i]变量和Discuz! 代码中的[i]代码冲突引起的字体变形。
解决
方法一:发贴时勾选“禁用 Discuz! 代码”
方法二:在所发代码的两头加[code][/code] Discuz! 代码



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
2010-1-28 19:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 7 楼』:  

你是在 CMD 下还是在 COMMAND 下? 好像 config.nt 和 autoexec.nt 只对 COMMAND 有效。



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
2010-1-28 19:43
查看资料  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 8 楼』:  

我在我的XP下只有CMD,没有COMMAND

2010-1-30 18:27
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 9 楼』:  

难道你用的也是那种改装版的 Windows ?把许多东西都精简掉了?



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
2010-2-3 18:47
查看资料  发短消息 网志   编辑帖子  回复  引用回复
firstsail
高级用户





积分 668
发帖 295
注册 2005-7-26
来自 广东深圳
状态 离线
『第 10 楼』:  

我安装的WinXP是用¥300大洋买来的正版软件安装的!

2010-2-6 11:55
查看资料  访问主页  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4633
发帖 2236
注册 2005-1-30
状态 离线
『第 11 楼』:  

哈哈!如果这样的话,那你可以找卖给你软件的人算帐了:为什么我的 Windows XP 没有 COMMAND ,你卖给我的算哪门子的 XP !



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
2010-2-6 22:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: