首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >读取C API调用的结果

读取C API调用的结果
EN

Stack Overflow用户
提问于 2012-10-04 15:45:13
回答 1查看 457关注 0票数 2

我想我可以使用C API从用户ID文件中获取公钥。找到了函数,我想我理解了大部分。但是我不知道如何从指向我想要的地址读取数据。

代码语言:javascript
运行
复制
Declare Function W32_OSLockObject Lib "nnotes.dll" Alias "OSLockObject" (Byval handle As  Long) As Long
Declare Function W32_OSUnlockObject Lib "nnotes.dll" Alias "OSUnlockObject" (Byval handle As Long) As Long

Declare Function SECKFMGetUserName Lib "nnotes" (Byval strReturnUserName As String) As Integer
Declare Function SECKFMGetPublicKey Lib "nnotes.dll" (Byval strUserName As String, Byval intFunction As Integer, Byval intFlags As Integer, handle As Long) As Integer


lret = SECKFMGetUserName(hUserName)
lret = SECKFMGetPublicKey(hUserName, 0, 0, hPublicKey)

aPublicKey = W32_OSLockObject(hPublicKey)

那现在呢?那只坐着的鸭子正等着我到地址[aPublicKey]去取呢。我尝试了几种方法从该地址获取字符串,但我一次又一次地失败。

这应该很简单,但我没有更多的线索可循。

我知道有很多关于C API的东西可以买到,但是我需要一本书才能从一个已知地址得到一个字符串吗?

想成为我的C API英雄吗?

EN

回答 1

Stack Overflow用户

发布于 2012-10-05 11:09:34

假设你指的是"LotusScript to have编程指南“,我有这本书。我强烈推荐它。有一个关于内存处理的很好的章节。

尝试声明OSLockObject以返回LMBCS字符串,如下所示:

代码语言:javascript
运行
复制
 Declare Function W32_OSLockObjectStr Lib "nnotes.dll" Alias "OSLockObject" (Byval handle As  Long) As LMBCS String

如果SECKFMGetPublicKey返回一个包含以null结尾的字符串的缓冲区,它应该可以工作。如果没有,本书中还介绍了其他一些技术。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12722513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档