首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法创建NotesUIWorkspace,如何创建

无法创建NotesUIWorkspace,如何创建
EN

Stack Overflow用户
提问于 2014-07-22 13:30:37
回答 2查看 930关注 0票数 0

我试图创建对象NotesUIWorkspace,以便从Lotus客户端V9 (添加管理员、文本、菜谱、ec)打开邮件对话框,但它不起作用--我正在搜索NotesUIWorkspace的引用(我找不到)

代码语言:javascript
运行
复制
dim obj as Object
obj = CreateObject("Notes.NotesUIWorkspace") 

我正在尝试使用designer.nsf/2e73cbb2141acefa85256b8700688cea/027a2bc771e3cb6e8525731b004a77f6?OpenDocument#183993280029220079的类

来自文档designer.nsf/Main?OpenFrameSet

我已经寻找了一些例子,但我没有发现任何有用的我的赎罪水平。

有人有一些有用的提示或例子吗?

向弗洛里安问好

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-22 14:13:14

下面是一个使用C#的示例,它将在UI中组成一个备忘录:

代码语言:javascript
运行
复制
public void ComposeMemo(String sendto, String subject, String body)
        {
            // instantiate a Notes session and workspace
            Type NotesSession = Type.GetTypeFromProgID("Notes.NotesSession");
            Type NotesUIWorkspace = Type.GetTypeFromProgID("Notes.NotesUIWorkspace");
            Object sess = Activator.CreateInstance(NotesSession);
            Object ws = Activator.CreateInstance(NotesUIWorkspace);

            // open current user's mail file
            String mailServer = (String)NotesSession.InvokeMember("GetEnvironmentString", BindingFlags.InvokeMethod, null, sess, new Object[] { "MailServer", true });
            String mailFile = (String)NotesSession.InvokeMember("GetEnvironmentString", BindingFlags.InvokeMethod, null, sess, new Object[] { "MailFile", true });
            NotesUIWorkspace.InvokeMember("OpenDatabase", BindingFlags.InvokeMethod, null, ws, new Object[] { mailServer, mailFile });
            Object uidb = NotesUIWorkspace.InvokeMember("GetCurrentDatabase", BindingFlags.InvokeMethod, null, ws, null);
            Object db = NotesUIWorkspace.InvokeMember("Database", BindingFlags.GetProperty, null, uidb, null);
            Type NotesDatabase = db.GetType();

            // compose a new memo
            Object uidoc = NotesUIWorkspace.InvokeMember("ComposeDocument", BindingFlags.InvokeMethod, null, ws, new Object[] { mailServer, mailFile, "Memo", 0, 0, true });
            Type NotesUIDocument = uidoc.GetType();
            NotesUIDocument.InvokeMember("FieldSetText", BindingFlags.InvokeMethod, null, uidoc, new Object[] { "EnterSendTo", sendto });
            NotesUIDocument.InvokeMember("FieldSetText", BindingFlags.InvokeMethod, null, uidoc, new Object[] { "Subject", subject });
            NotesUIDocument.InvokeMember("FieldSetText", BindingFlags.InvokeMethod, null, uidoc, new Object[] { "Body", body });

            // bring the Notes window to the front
            String windowTitle = (String)NotesUIDocument.InvokeMember("WindowTitle", BindingFlags.GetProperty, null, uidoc, null);
            Interaction.AppActivate(windowTitle);
        }
票数 1
EN

Stack Overflow用户

发布于 2014-07-22 20:30:47

你在64位操作系统上运行吗?如果是这样的话,那么Domino类可能会出现一些问题。他们不支持64位,虽然他们可以工作,大部分。

有关其他信息的链接,请参阅我对this question的答复。

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

https://stackoverflow.com/questions/24888761

复制
相关文章

相似问题

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