| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 426 人关注过本帖
标题:请教一个很基本的问题
只看楼主 加入收藏
yz1025
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:491
专家分:919
注 册:2012-10-26
结帖率:95.56%
收藏
已结贴  问题点数:20 回复次数:7 
请教一个很基本的问题
发现有一个地方很奇怪,试过之后更觉得莫名其妙,百思不解。

同一支程序,把函式编成DLL用VB6去呼叫来使用,和把函式编成EXE用VB6去呼叫,
完全相同的内容,当然EXE和DLL有些编写方式不相同的部分有手动改过,编译后
也无错误讯息。去执行读取同一个档案,用EXE就可以,用DLL就不行,这是为何?

用同一支VB6程式去呼叫,一个用API方式,一个用Shell方式。调试模式下,
某个指标阵列要配置内存空间时,一个EXE可以配到,一个DLL配不到。
但是配置的需求大小完全一样。

是VC6的DLL有要变更哪些预设设置项目吗?
2013-01-11 15:49
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:7 
楼主是台湾来的朋友?
2013-01-11 16:38
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:7 
看不懂。


[fly]存在即是合理[/fly]
2013-01-11 16:47
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:7 
在DLL中动态申请内存,是从宿主进程的空间中获取,这个DLL挂在VB的进程中,两者的内存空间是不一样的,你写的东西可能不匹配。其实,你最好用.NET框架,是无缝接合的,不存在这种问题。

授人以渔,不授人以鱼。
2013-01-11 19:57
yz1025
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:491
专家分:919
注 册:2012-10-26
收藏
得分:0 
长官是说VB6启动时,系统就有定义某个大小的内存范围能运用,
是说要我把它加大,但是我不知道要去哪加这东西,我VB6根本就
没设定过这​​东西,也没看过类似能设定的地方。

目前已经全先改成EXE了。

把11个二进制档案合并出1个1,264,942,058个字节的二进制档案,
再转出1,795,894,651字节的文本档,抓到5个错误点。STDF<->ATDF

不要投我
2013-01-11 20:22
yz1025
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:491
专家分:919
注 册:2012-10-26
收藏
得分:0 
总的来说剩接缝处差一个字节的错误,调试下预估明天下班前就能完工。
谢谢大家了。

.NET根本上来说,没那环境,整个公司没人用.NET开发软件或产品。
大概也只有小公司或新公司才能轻易的切换编程语言。
老公司和大公司的包袱太沉重,要换难阿。

不要投我
2013-01-13 22:01
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
VB6足可以完成绝大多数功能,要这样使用C写DLL的机会极微,就算要混搭C,也把它写成EXE独立执行胜于用DLL挂接。我说的是,如果非要用DLL,是最好用.NET,这样的DLL就不会出那些问题。你原本的问题就是问DLL。

授人以渔,不授人以鱼。
2013-01-14 16:19
yz1025
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:491
专家分:919
注 册:2012-10-26
收藏
得分:0 
这可能是个人习惯一个执行档内搭一堆执行档~感觉就好怪~这是怪僻~

不然就要搞用参数代号区别功能像DOS命令一样~喔~灵光乍现~就这么办~

一下VB6一下C有时还真会搞混~不过比VB和两边切换好多了~

不要投我
2013-01-15 09:25
快速回复:请教一个很基本的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028735 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved