免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2546 | 回复: 0
打印 上一主题 下一主题

如何在VB中使用导入API [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-30 15:56 |只看该作者 |倒序浏览
在 Visual Basic 中使用导入 API会发现很难找到正确的 dll。我知道 C++ 中有一个 dll,但是,有没有可以从 VB 应用程序调用的 dll 呢?

回答是肯定的:

有两种方法可以完成这项工作。一种方法就是在 VB 的 DECLARE 部分列出您希望调用的 C API,然后利用标准

的调用序列从 VB 调用它,如下面的代码样本所示:

Type SQLCA_STRUCT

sqlcaid As String * 8

sqlcabc As Long

sqlcode As Long

sqlerrml As Integer

sqlerrmc As String * 70

sqlerrp As String * 8

sqlerrd(6) As Long

sqlwarn As String * 11

sqlstate As String * 5

End Type

Public Declare Function sqlepstart Lib "db2app" Alias "sqlepstart_api"

(ByVal junk&, ByRef sqlca As SQLCA_STRUCT) As Integer

'

DB2_start = sqlepstart(0, sqlca) ' Start DB2 call

另一种方法就是生成一个文件,然后发出一条命令在后台执行该函数(当然,取决于您正在试图做什么):

fileno = FreeFile

Open db2file For Output As #fileno

sqlstmt = "" + _

"db2start;" + vbNewLine + _

"quit;"

Print #fileno, sqlstmt ' Write commands to a file

Close #fileno ' Close it and execute the command

db2cmd = "db2cmd /i /c db2 -tvf " + db2file ' Generate the command

progID = Shell(db2cmd, vbMinimizedNoFocus) ' Shell out to run it

最后,DB2 的下一个版本将允许您象运行普通的 SQL 表函数那样运行特殊的 API 命令。这会返回有关目前可在 DB2 中找到的许多管理 API 的结果。因此,无需进行 API 调用,您只需使用 SQL 调用就可从 DB2 获取信。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP