Lotus Notes 自动化:Notes.NotesSession 未实现 Domino::ISession?

发布于 2024-12-17 17:37:04 字数 902 浏览 0 评论 0原文

我正在尝试改进我的 Lotus Notes 客户端代码:

工作:

#import "...\IBM\Lotus\Notes\notes32.tlb" no_dual_interfaces raw_native_types

CComPtr<IDispatch> session_dispatch;
if(FAILED(session_dispatch.CoCreateInstance(_T("Notes.NotesSession"))))
    ...
NOTESSESSION *session = static_cast<NOTESSESSION *>(*&session_dispatch);

这为我提供了一个有效的 NOTESSESSION 对象,该对象知道它需要通过 IDispatch 来实际调用方法。

我在网上找到了一些示例代码,看起来更理智,假定为更高版本的 Notes:

#import "...\IBM\Lotus\Notes\domobj.tlb" raw_interfaces_only raw_native_types

CComPtr<Domino::ISession> notes;
if(FAILED(notes.CoCreateInstance(_T("Notes.NotesSession"))))
    ...

但是会返回 E_NOINTERFACE。正如其他人声称有类似的代码工作一样,我想知道这里可能发生了什么,并谦虚地询问其他人是否有工作代码来实例化 Session 对象并获取工作接口指针。

I'm trying to improve my Lotus Notes client code:

Working:

#import "...\IBM\Lotus\Notes\notes32.tlb" no_dual_interfaces raw_native_types

CComPtr<IDispatch> session_dispatch;
if(FAILED(session_dispatch.CoCreateInstance(_T("Notes.NotesSession"))))
    ...
NOTESSESSION *session = static_cast<NOTESSESSION *>(*&session_dispatch);

This gives me a valid NOTESSESSION object that is aware that it needs to go through IDispatch to actually invoke methods.

I found some example code on the net, which looks a lot saner and assumes a later Notes version:

#import "...\IBM\Lotus\Notes\domobj.tlb" raw_interfaces_only raw_native_types

CComPtr<Domino::ISession> notes;
if(FAILED(notes.CoCreateInstance(_T("Notes.NotesSession"))))
    ...

However that returns E_NOINTERFACE. As others claim to have similar code working, I wonder what may be going on here, and humbly ask whether anyone else has working code to instantiate a Session object and get a working interface pointer.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

胡渣熟男 2024-12-24 17:37:04

对于 domobj.tlb,您应该使用“Domino.NotesSession”而不是“Notes.NotesSession”。

With domobj.tlb, you should use "Domino.NotesSession" rather than "Notes.NotesSession".

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文