扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在 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 获取信。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者