找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1031|回复: 16

[建议]:请给‘菜鸟’一次扫盲(MDL)的机会-----

[复制链接]
发表于 2003-3-4 13:40:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
致版主以及各高手:
    在看完版主推荐的MDL教程中,还是满头雾水----
        简单的说,就是不知如何把MDL的开发流程,连接起来---
        希望还是给一个较为完成的,小程序开发流程样版-----这样也好让我们这些‘菜鸟’,不总在‘文盲’中工作吧;
   先谢谢了-----
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-3-4 14:09:23 | 显示全部楼层
MDL其实不难 只要熟悉C语言,应该没有什么问题,本人也是学习不久,我先来说说。
比如写一个显示hello的小程序吧 在MS 95下  请将我得MS安装目录替换成你的ms安装目录
不要对话框只需要两个文件
主程序 hello.mc  
void main()
{
  printf("hello\n");
}
应用生成文件hello.mke
baseDir          = $ d:/gp/mdl/hello/   /*工作目录两个文件放到此目录下*/
objectDir       = $(baseDir)
privateInc      = $(baseDir)
englishDir      = $(baseDir)


%ifdef BSI
%include $(MS)/include/publish/mdl.mki
%else
%include $(MS)/mdl/include/mdl.mki
%endif

%ifndef reqdObjs
reqdObjs        = $(objectDir)
%endif
%ifndef langSpec
langSpec        = $(englishDir)
%endif
%ifndef rscOutput
rscOutput       = $(mdlapps)
%endif

transobjs        = $(objectDir)hello.mo
rscObjList      =  $(objectDir)hello.mp

#---------------------------------------------
#       Compile Dialog Resources
#---------------------------------------------


$(objectDir)hello.mo         : $(baseDir)hello.mc

$(objectDir)hello.mp         : $(transobjs)
        $(msg)
        > $(baseDir)make.opt
        -a$%$*.mp
        $(linkOpts)
        $(transObjs)
        $(mdlLibs)mdllib.ml
        <
        $(linkCmd) @$(baseDir)make.opt
        ~time

$(mdlapps)hello.ma    : $(rscObjList)
$(msg)
>$(objectDir)temp.cmd
  -o$@
  $(rscObjList)
<
$(rscLibCmd) @$(objectDir)temp.cmd
~time
开始编译 在dos提示符下,输入如下命令
path E:\win32app\ustation\mdl\bin
set MS=E:\win32app\ustation
set IPATH=E:\win32app\ustation\mdl\include
set MDL_COMP=-ie:\win32app\ustation\mdl\include
set RSC_COMP=-ie:\win32app\ustation\mdl\include
d:
cd\gp\mdl\hello
bmakewin hello
编译完成
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-4 20:47:33 | 显示全部楼层
我用的是MS/J
但在操作中出现如下问题--
C:\>bmake hello
BMAKE: can't open hello
Tue Mar 04 20:51:15 2003, elapsed time: 0:00
如何解决--谢谢

对了,有QQ吗,能不能留下,交流
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-5 08:01:59 | 显示全部楼层
MS/j 的编译应该是一样的 从错误来看 两个文件 hello.mc hello.mke 没有在c:\目录下
我得QQ在单位不能正常使用 你有MSN或者ICQ吗
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-5 11:59:59 | 显示全部楼层
问题还是没有解决-----
我设的目录是:
baseDir = $ g:/mdl/ /*工作目录两个文件放到此目录下*/
objectDir = $(baseDir)
privateInc = $(baseDir)
englishDir = $(baseDir)

/把它COPY到系统盘后,还是一样的错误---不知为什么?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-5 14:47:17 | 显示全部楼层
把文件传上来 我看看
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-5 16:19:45 | 显示全部楼层
#--------------------hello.mc
void main()
{
printf("hello\n");
}
#-------hello.mke
baseDir = $ d:/mdl/ /*工作目录两个文件放到此目录下*/
objectDir = $(baseDir)
privateInc = $(baseDir)
englishDir = $(baseDir)


%ifdef BSI
%include $(MS)/include/publish/mdl.mki
%else
%include $(MS)/mdl/include/mdl.mki
%endif

%ifndef reqdObjs
reqdObjs = $(objectDir)
%endif
%ifndef langSpec
langSpec = $(englishDir)
%endif
%ifndef rscOutput
rscOutput = $(mdlapps)
%endif

transobjs = $(objectDir)hello.mo
rscObjList = $(objectDir)hello.mp

#---------------------------------------------
# Compile Dialog Resources
#---------------------------------------------


$(objectDir)hello.mo : $(baseDir)hello.mc

$(objectDir)hello.mp : $(transobjs)
$(msg)
> $(baseDir)make.opt
-a$%$*.mp
$(linkOpts)
$(transObjs)
$(mdlLibs)mdllib.ml
<
$(linkCmd) @$(baseDir)make.opt
~time

$(mdlapps)hello.ma : $(rscObjList)
$(msg)
>$(objectDir)temp.cmd
-o$@
$(rscObjList)
<
$(rscLibCmd) @$(objectDir)temp.cmd
~time
#---我有,系统的环境里设了,你要的变量,我用的是WIN2000
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-5 17:48:05 | 显示全部楼层
hello.mke 文件中 ,把 "/*工作目录两个文件放到此目录下*/ "  去掉。不能用/* */做注释
你的两个文件放在的d:\mdl 目录下了吗
在dos 提示符下 进入 d:\mdl目录   编译
d:\mdl>bmakewin hello
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-5 23:33:25 | 显示全部楼层
我再次编译后出现以下错误请看看---
Bentley Systems Make Utility. Version 7.15, Sep 14 1999
Wed Mar 05 23:22:11 2003
Wed Mar 05 23:22:11 2003, elapsed time: 0:00
BMAKE: no rules to build g:\mdl\
BMAKE: call trace
    line:   33, G:\mdl\hello.mke
#33行是$(objectDir)hello.mp : $(transobjs)
#这是什么原因呢?请问
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-6 08:28:29 | 显示全部楼层
可能论坛上某些字符会被转义,所以会出现错误。 我把文件传上来了,你试试
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-6 17:27:14 | 显示全部楼层
不好意思了--
    你给我的程序,打包的那个,我下后,运行
出现了下面的错误:
G:\mdl>bmake hello
Bentley Systems Make Utility. Version 7.15, Sep 14 1999
Thu Mar 06 16:38:51 2003

[== Building g:\mdl\hello.mo, (g:\mdl\hello.mc) ==]
BMAKE: unable to create d:\Bentley\Program\MicroStation\mdl\objects\make.opt
BMAKE: call trace
    line:   33, G:\mdl\hello.mke
Thu Mar 06 16:38:51 2003, elapsed time: 0:00
#请给看看是什么原因?谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-6 18:52:50 | 显示全部楼层
TR100:请查看一下你的机器上是否存在目录d:\Bentley\Program\MicroStation\mdl\objects
如果不存在请手工建立后再试一试!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-3-7 12:44:57 | 显示全部楼层
在建后,依然是错误,---说是找不到HELLO.MP
哪位能不能,提供一个J版的程序呢,还有相应的配制----
谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-7 19:01:30 | 显示全部楼层
MicroStation\mdl\examples目录下不是有许多例子吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-3-20 08:50:59 | 显示全部楼层
我是一个新手,对mdl了解一点。不知道您能不能留下来您的MSN ?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-25 13:47 , Processed in 0.485742 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表