社区
C语言
帖子详情
50分求一个BC3.1下的XMS管理程序,我的调不通.
ydyuse
2003-01-13 09:01:27
要求,不用INT15H。系统用DOS6.22
...全文
52
9
打赏
收藏
50分求一个BC3.1下的XMS管理程序,我的调不通.
要求,不用INT15H。系统用DOS6.22
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ydyuse
2003-01-15
打赏
举报
回复
好,给我吧,我马上给分
spirix
2003-01-15
打赏
举报
回复
can you make that?
spirix
2003-01-15
打赏
举报
回复
// xmstest.cpp
//===========================================
#include "xmslib.h"
#include <STDIO.H>
MyXMS Mxms;
void main()
{
FILE *fp1,*fp2;
unsigned int Max;
unsigned Total;
unsigned long fsize=0,Xms_Size=0,FileLenth=0;
long size_=0;
// buff= new far char[2024];
char buff[2024]="ddddddddddddddddddddddddddddddddddd\
dddddddddddddddfffffffffffffffffffffffffffffffffffff\
ddddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddfffffffffffffffffffffffffffffffffffff\
ddddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddfffffffffffffffffffffffffffffffffffff\
ddddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
ddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddfffffffffffffffffffffffffffffffffffff\
ddddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
dddddddddddddddddddddddddddddddddddddddddddddddddddd\
ddddddddddddddddddddddddddddddddddddddddddddddddddd";
printf(" %d ",XMS_Test());
if((fp1= fopen("Temp.bmp","rb+"))==NULL) printf("Wrong");
if((fp2=fopen("out.exe", "wb" ))==NULL) printf("Wrong");
unsigned handle;
printf(" %d ", Mxms.XMS_Get(handle,100));
Mxms.XMS_Check(Max,Total);
printf("%d,%u|",Max,Total);
Mxms.Xmd.Source_Handle=0;
Mxms.Xmd.Source_Offset=(unsigned long)(buff);
Mxms.Xmd.Target_Handle=handle,
Mxms.Xmd.Target_Offset=0;
fseek(fp1,0L,2);
FileLenth=ftell(fp1);
rewind(fp1);
while(1)
{
size_=ftell(fp1);
fsize=fread((char far *)buff,1,2024,fp1);
Mxms.Xmd.Target_Offset=Xms_Size;
Mxms.Xmd.Move_Bytes=fsize;
Mxms.XMS_Move();
Xms_Size+=fsize;
// fseek(fp1,Xms_Size,0);
// Mxms.Xmd.Target_Offset+=fsize;
if (Xms_Size>=FileLenth) break;
}
//Xms_Size=Mxms.Xmd.Target_Offset;
fsize=0;
Mxms.Xmd.Source_Handle=handle;
Mxms.Xmd.Source_Offset=0;
Mxms.Xmd.Target_Handle=0,
Mxms.Xmd.Target_Offset=(unsigned long)(buff);
while(1)
{
if(Xms_Size-fsize>2024)
{
Mxms.Xmd.Source_Offset=fsize;
Mxms.Xmd.Move_Bytes=2024;
Mxms.XMS_Move();
fwrite(buff,2024,1,fp2);
fsize+=2024;
}
else
{
Mxms.Xmd.Source_Offset=fsize;
Mxms.Xmd.Move_Bytes=Xms_Size-fsize;
Mxms.XMS_Move();
fwrite(buff,Xms_Size-fsize,1,fp2);
break;
}
}
Mxms.XMS_Free(handle);
fclose (fp1);
fclose (fp2);
}
// bc3.1下运行
spirix
2003-01-14
打赏
举报
回复
我给的文档不能用吗?
我已经用它在dos下开发过两个软件了,用不用把测试程序也给你?
ydyuse
2003-01-13
打赏
举报
回复
只要可用,肯定给分
spirix
2003-01-13
打赏
举报
回复
请参考我的文档!
http://www.csdn.net/develop/read_article.asp?id=7198
记得给分哦!
ydyuse
2003-01-13
打赏
举报
回复
DOS4GW 模式??不好意思,我不明白是什么?
Nepton
2003-01-13
打赏
举报
回复
使用 DOS4GW 模式写程序
ydyuse
2003-01-13
打赏
举报
回复
各位继续!
Linux运维入门到高级
系统管理 ................................................................................................ 20 2.1. 1 Linux 目录初识 ......................................................................
纯DOS下内存的管理—实模式下访问4GB内存
纯DOS下内存的管理—实模式下访问4GB内存DOS操作系统最早设计时,PC机的硬件系统只支持1M字节的寻址空间,所以DOS只能管理最多1M字节的连续内存空间。在这1M内存中,又只有640K被留给应用程序使用,它们被称为常规...
Linux运维-day58-tomcat与阿里云
一、tomcat 1.1 tomcat LNMT ※※※ 网站代码 PHP---LNMP Java----LNMP 1.2 JVM Windows版本的QQ放到Linux是否可以运行?不能 代码的可移植性:1份代码可以运行在不同的系统中 JAVA程序 会被放在1个叫虚拟机容器...
Docker入门
一、Docker入门 1. 概述 1.1 基本介绍 Docker 是
一个
开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到
一个
轻量级、可移植的容器中,然后发布到任何...
docker
文章目录docker学习1、Docker概述1.1 docker为什么会出现?1.2Docker历史1.3 Docker为什么能出现?...3、Docker的常用命令3.1 帮助命令3.2 镜像命令1.查看镜像命令docker images2.搜索镜像docker sear
C语言
70,026
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章