| 查看: 1597 | 回复: 4 | ||
[求助]
有关DLL的问题
|
| 我想用DLL做一个数据库,能够采集下位机传来的包括整型、离散型、字符串型的数据,并进行累加计算,但是不太清楚怎么用DLL采集数据并进行缓存,还有如何进行累加计算。在下初学VC,求各路英雄伸出援手啊!! |
» 猜你喜欢
寻求一种能扛住强氧化性腐蚀性的容器密封件
已经有7人回复
到新单位后,换了新的研究方向,没有团队,持续积累2区以上论文,能申请到面上吗
已经有8人回复
申请2026年博士
已经有6人回复
请问哪里可以有青B申请的本子可以借鉴一下。
已经有5人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有5人回复
2025冷门绝学什么时候出结果
已经有7人回复
请问有评职称,把科研教学业绩算分排序的高校吗
已经有6人回复
Bioresource Technology期刊,第一次返修的时候被退回好几次了
已经有7人回复
请问下大家为什么这个铃木偶联几乎不反应呢
已经有5人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
» 本主题相关价值贴推荐,对您同样有帮助:
关于“ISIS_PJPlan_Doc.dll必需和计划书文件在同一目录下才能检查保护”的问题
已经有14人回复
有关fortran的一次而问题,希望大家能帮帮忙,谢谢
已经有4人回复
这个讨厌的现象怎么消除
已经有9人回复
【原创】(总结)关于使用360优化导致MS无法使用最终解决方法
已经有30人回复
vista下如何安装XRD软件
已经有5人回复
lurencyj
木虫 (著名写手)
- 应助: 159 (高中生)
- 金币: 2869.2
- 散金: 520
- 红花: 8
- 沙发: 10
- 帖子: 1244
- 在线: 148.3小时
- 虫号: 888093
- 注册: 2009-10-29
- 性别: GG
- 专业: 凝聚态物性I:结构、力学和
【答案】应助回帖
★ ★
感谢参与,应助指数 +1
xzhdty: 金币+2, 谢谢参与 2012-03-18 08:05:24
感谢参与,应助指数 +1
xzhdty: 金币+2, 谢谢参与 2012-03-18 08:05:24
|
转贴:http://read.newbooks.com.cn/info/173238.html VC创建动态库及其使用方法简介 这里介绍的VC创建DLL的方法是最简单也是最常用的方法,创建的基本过程就象下面介绍的这样简单。调用DLL的方法,随不同的开发语言有所不同,但是基本上分为静态调用和动态调用。最常用的也就是静态调用用,如果想了解动态调用DLL以及DLL相关高级话题,请参考其他资料,这些内容不在本章探讨内容之中。 一.VC创建动态库的过程 Step1: 首先创建工程,类型为”Win32 Dynamic-Link Library”。然后可以选择”A Empty DLL Project”。 Step2: 首先创建头文件,本例为”DllExample.h”,内容如下: NOTICE:在创建自己的DLL头文件过程中,您只需要把 (1) #ifndef _DLLEXAMPLE_H #define _DLLEXAMPLE_H 修改成您自己的头文件的名称 (2) 部分替换成您的接口函数,其它部分可以复制使用。 Step3: 其次创建.pp文件,也就是实现文件。本例实现如下: NOTICE: 要包含头文件,如果您的接口函数实现过程中需要其它的头文件,也都在这里包含进去。 Step4: 创建def文件,此文件是DLL输出您所实现的所有函数接口的。创建时选择”Text File”创建的文件后缀名是.def。本例内容如下: LIBRARY "DLLEXAMPLE" DESCRIPTION "A Dll Example" EXPORTS Jisuan NOTICE: (1) 您只需要把LIBRARY "DLLEXAMPLE",修改成您的DLL名称。 (2) EXPORTS下,只列出函数名称,而不包含其参数等。 按照以上方式创建的DLL,是其他任何语言都可以调用的,基本的过程如上所述,其实很简单。 二.应用程序调用DLL的方法 这里我是用VC创建了一个很简单的应用程序,其实就一个按钮,来调用。 代码如下: 这里用的是静态调用,因此只需要把动态库的DLL文件,LIB文件和头文件拷到需要调用动态库的应用程序当前目录下就可以了。另外需要注意的是VC,还需要用”Project->Add to Project->Files”把LIB文件和头文件添加到应用程序,否则会报找不到动态库的错误。 基本情况就是这样,其他编程平台的调用方法可能有所不同,但是大同小异。另外一个需要注意的问题是,当其他语言需要调用C编写的动态库时,需要进行类型转换,这些内容将另外讨论。 |

2楼2012-03-18 00:25:11
burellow
新虫 (著名写手)
- 应助: 8 (幼儿园)
- 金币: 10475.5
- 散金: 100
- 红花: 1
- 帖子: 1143
- 在线: 388.8小时
- 虫号: 1376619
- 注册: 2011-08-22
- 性别: GG
- 专业: 声学
3楼2012-03-18 08:35:53
4楼2012-03-18 09:23:45
sharkyurui1
金虫 (初入文坛)
- 应助: 7 (幼儿园)
- 金币: 923.3
- 帖子: 36
- 在线: 21.6小时
- 虫号: 1244287
- 注册: 2011-03-25
- 性别: GG
- 专业: 能源化工
【答案】应助回帖
感谢参与,应助指数 +1
|
为什么要用DLL做呢?DLL文件是需要被调用才能执行的,所以可能你还得需要用VC写一个EXE程序来调用这个DLL文件。 我对VC串口通信不是很熟。通过串口通信获取数据,应该可以用对应类型的变量存储就行了。要获取的类型数据莫非还不能提前确定? 累加就不说了,根据你们的累加规则。如果数据连续采集那用一个局部变量存储总和值,最后写入数据文件,不然的话可以用全局变量或者从保存的数据文件中读取来获取该次采集之前所有采集的总和值。 我还是不懂你的DLL做一个数据库是什么意思,这种数据采集一般量都不大,用VC中中的文件操作函数存储到文本文件里面就可以,还方便用记事本查看。 总之你要实现的功能并不难,关键在于解决和下位机的通信问题。理清思路之后百度百度应该就能完成。 |
5楼2012-03-20 10:54:51













回复此楼