| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 1163 人关注过本帖, 1 人收藏
标题:vfp编写dll文件
只看楼主 加入收藏
pmc1234
Rank: 5Rank: 5
等 级:职业侠客
帖 子:398
专家分:383
注 册:2010-1-6
结帖率:98.8%
收藏(1)
已结贴  问题点数:10 回复次数:3 
vfp编写dll文件
请问 怎么用vfp做dll文件  谢谢
搜索更多相关主题的帖子: vfp dll 文件 编写 
2010-05-28 21:19
needacoder
Rank: 2
等 级:论坛游民
帖 子:2
专家分:10
注 册:2010-5-31
收藏
得分:10 
有两种DLL文件,一种是用Declare说明然后调用,这种文件copy了就能用,但不能用智能提示,只能用专门的工具查看里面有什么东西,这种Dll一般是用C编写的。
另外一种是COM方式的Dll,用Createobject(对象名)方式调用,对象名的两部分组成,也不能直接看出,需要开发者提供,下面就可以用智能提示了。
这种DLL许多语言都可以开发,也都可以调用,VFP开发的DLL就属于这种。
Local loCom
loCom = Createobject('Mydll.Mydata')

*!* 示例:
首先建一个工程,如MyDll,
然后建一个主程序,如MyDllMain,
然后在这个主程序里写如下代码:
**********取得表中记录总数**********
Define Class MyData As Session OlePublic &&如果是VFP6-SP5以下,把SessionN改为Custom
    Procedure GetDataCount
        Lparameters tcTable
        Select 0
        Select Count(*) From (tcTable) Into Array curData
        Use In (tcTable)
        Return Alltrim(Str(curdata))
    Endproc
Enddefine
************************************
编译时选择连编成DLL。


在VFP中调用这个DLL:
Local loCom
loCom = Createobject('Mydll.Mydata')
?loCom.GetDataCount('temp1') &&temp1为表名
Release loCom
loCom = Null
Return


注:
1.session只能在VFP6.0+SP5开始才能使用,建议使用7.0或更高版本。若非要用6.0,则必须打补丁,或改用CUSTOM类。
2.编译成的DLL,与EXE一样,要用运行库,还必须同时发布 VFP[x]T.Dll 文件([x]可为6、7、8或9)。
3.如果感觉用DLL不方便,那么可以编译成用vfp的exe文件,直接在其他开发工具中调用执行,只要定义数据接口就行。如:其他开发工具调用vfp的exe程序,vfp程序把结果输出到一个txt文件中,然后再由其他开发工具进行读取即可。



本文来自CSDN博客,转载请标明出处:http://blog.
2010-05-31 08:26
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1509
专家分:174
注 册:2006-6-3
收藏
得分:0 
这段代码是什么意思?
2010-07-28 10:28
donotspam
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:96
专家分:109
注 册:2016-2-28
收藏
得分:0 
2020-05-06 11:20
快速回复:vfp编写dll文件
数据加载中...
 
   



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

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